| Pattern |
Explanation |
| [a-c] |
This matches any character in the range 'a' to 'c' |
| [a-cde] |
This matches any character in the range 'a' to 'e' |
| [\-x] |
This matches the '-' character or the 'x' character
|
| [^ab] |
This matches any characters except 'a' or 'b' |
| . |
This matches any character except \n. To match any character at all, you
might try [\d\D]. |
| {n1,n2} |
This matches between n1 and n2 instances of the previous Pattern, where
n1 and n2 are integers. |
| {n1,} |
This matches at least n1 instances of the previous Pattern |
| * |
The same as {0,} |
| ? |
The same as {0,1} |
| + |
The same as {1,} |
| *?
| By default, {n1,n2}, {n1,}, *, ?, +, match the largest number of
occurences of the preceeding Pattern. If any of these is followed by a ?
it will attempt, instead, to match the fewest occurents of the preceeding
Pattern. |
| (a|b) |
This matches the character a or b, and returns the matched character as
a backreference. In other words, if you call Regex's search method with
"a" you will find that an "a" is returned by
stringMatched(1). |
| (a) |
This matches the character "a" as a backreference.
|
| \b |
This matches a word boundary, either a beginning \w character, an ending
\w character, or one of these two sequences: \w\W, \W\w. |
| (?: ... ) |
like the parenthesis above, but does not create a backreference. |
| (?= ... ) |
A zero-length lookahead. Thus the pattern "foo(?=bar)" will
match "foo", but only if followed by "bar". |
| (?! ... ) |
Another form of zero-length lookahead. However, it only matches if the
thing in the ()'s is not matched. Thus "foo(?!bar)"
matches "foo" only if it is not followed by "bar".
|
| (?# ... ) |
A comment |
| \B |
A non-word Boundary. Essentially the same as (?!\b). |
| \d |
Essentially the same as [0-9]. |
| \D |
Not a digit. Essentially the same as [^0-9]. |
| \w |
A word character, essentially the same as [a-zA-Z_0-9] |
| \W |
Not a word character. |
| \s |
A white-space character, [ \t\b\n\r]. |
| \S |
A non white-space character. |
| \1 |
Match the contents of the first backreference. Thus
"([a-d]).*\1" matches the first 5 characters of
"axyzabc". |
| (?i) |
Tell this pattern to ignore case during a match. |
| $ |
Matches the end of a String (the \n character is considered the end of
the string by this pattern element). |
| \Z |
Matches the end of a String. The \n character does not count as the end. |
| ^ |
Matches the beginning of a String. This is either the absolute
beginning, or right after a \n character. |
| \A |
Matches the absolute beginning of a String. |
| \G |
Matches the place we left off in our last search of this String with
this pattern or, failing that, the beginning of the String. |