Microsoft® JScript Regular Expression Syntax |
Language Reference Version 3 |
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.