Microsoft® JScript™
Regular Expression Syntax
 Language Reference 
Version 3 

See Also                  Applies To


Description
Special characters and sequences are used in writing patterns for regular expressions. The following table describes these characters and includes short examples showing how the characters are used.

Character Description
\ Marks the next character as special. /n/ matches the character "n". The sequence /\n/ matches a linefeed or newline character.
^ Matches the beginning of input or line.
$ Matches the end of input or line.
* Matches the preceding character zero or more times. /zo*/ matches either "z" or "zoo."
+ Matches the preceding character one or more times. /zo+/ matches "zoo" but not "z."
? Matches the preceding character zero or one time. /a?ve?/ matches the "ve" in "never."
. Matches any single character except a newline character.
(pattern) Matches pattern and remembers the match. The matched substring can be retrieved from the result Array object elements [1]...[n] or the RegExp object's $1...$9 properties. To match parentheses characters ( ), use "\(" or "\)".
x|y Matches either x or y. /z|food?/ matches "zoo" or "food."
{n} n is a nonnegative integer. Matches exactly n times. /o{2}/ does not match the "o" in "Bob," but matches the first two o's in "foooood."
{n,} n is a nonnegative integer. Matches at least n times. /o{2,}/ does not match the "o" in "Bob" and matches all the o's in "foooood." /o{1,}/ is equivalent to /o+/.
{n,m} m and n are nonnegative integers. Matches at least n and at most m times. /o{1,3}/ matches the first three o's in "fooooood."
[xyz] A character set. Matches any one of the enclosed characters. /[abc]/ matches the "a" in "plain."
[^xyz] A negative character set. Matches any character not enclosed. /[^abc]/ matches the "p" in "plain."
\b Matches a word boundary, such as a space. /ea*r\b/ matches the "er" in "never early."
\B Matches a nonword boundary. /ea*r\B/ matches the "ear" in "never early."
\d Matches a digit character. Equivalent to [0-9].
\D Matches a nondigit character. Equivalent to [^0-9].
\f Matches a form-feed character.
\n Matches a linefeed character.
\r Matches a carriage return character.
\s Matches any white space including space, tab, form-feed, and so on. Equivalent to [ \f\n\r\t\v]
\S Matches any nonwhite space character. Equivalent to [^ \f\n\r\t\v]
\t Matches a tab character.
\v Matches a vertical tab character.
\w Matches any word character including underscore. Equivalent to [A-Za-z0-9_].
\W Matches any nonword character. Equivalent to [^A-Za-z0-9_].
\num Matches num, where num is a positive integer. A reference back to remembered matches. \1 matches what is stored in RegExp.$1.
/n/ Matches n, where n is an octal, hexadecimal, or decimal escape value. Allows embedding of ASCII codes into regular expressions.