Every regular expression must be enclosed in slashes (
/). Within these slashes, certain characters
have special meanings; they are called
metacharacters. For instance, an asterisk (
*) has a meaning similar to what you have seen
if you use a shell or Windows Command prompt (but not quite the same).
An asterisk means, “The text you’re trying to match may have any number
of the preceding character—or none at all.”
For instance, let’s say you’re looking for the name “Le Guin” and know that someone might spell it with or without a space. Because the text is laid out strangely (for instance, someone may have inserted extra spaces to right-justify lines), you could have to search for a line such as:
The difficulty of classifying Le Guin's works
So you need to match “LeGuin,” as well as “Le” and “Guin” separated by any number of spaces. The solution is to follow a space with an asterisk:
There’s a lot more than the name “Le Guin” in the line, but that’s
OK. As long as the regular expression matches some part of the line, the
test function returns a true value. What if it’s important to make sure the line contains nothing but “Le Guin”? I’ll show how ...