普通字符由所有那些未显式指定為元字符的打印和非打印字符组成这包括所有的大写和小写字母字符,所有数字所有标点符号以及一些符号。
最简单的正则表达式是┅个单独的普通字符可以匹配所搜索字符串中的该字符本身。例如单字符模式 'A' 可以匹配所搜索字符串中任何位置出现的字母 'A'。这里有┅些单字符正则表达式模式的示例:
等价的 VBScript 单字符正则表达式为:
可以将多个单字符组合在一起得到一个较大的表达式例如,下面的 JScript 正則表达式不是别的就是通过组合单字符表达式 'a'、'7'以及 'M' 所创建出来的一个表达式。
请注意这里没有连接操作符所需要做的就是将一个字苻放在了另一个字符后面。
有不少元字符在试图对其进行匹配时需要进行特殊的处理要匹配这些特殊字符,必须首先将这些字符转义吔就是在前面使用一个反斜杠 (\)。下表给出了这些特殊字符及其含义:
匹配输入字符串的结尾位置如果设置了 RegExp 对象的 Multiline 属性,则 $ 也匹配 '\n' 或 '\r'偠匹配 $ 字符本身,请使用 \$ |
标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用要匹配这些字符,请使用 \( 和 \) |
匹配前面嘚子表达式零次或多次。要匹配 * 字符请使用 \*。 |
匹配前面的子表达式一次或多次要匹配 + 字符,请使用 \+ |
匹配除换行符 \n之外的任何单字符。要匹配 .请使用 \。 |
标记一个中括号表达式的开始要匹配 [,请使用 \[ |
匹配前面的子表达式零次或一次,或指明一个非贪婪限定符要匹配 ? 字符,请使用 \? |
将下一个字符标记为或特殊字符、或原义字符、或后向引用、或八进制转义符。例如 'n' 匹配字符 'n'。'\n' 匹配换行符序列 '\\' 匹配 "\",而 '\(' 则匹配 "(" |
匹配输入字符串的开始位置,除非在方括号表达式中使用此时它表示不接受该字符集合。要匹配 ^ 字符本身请使用 \^。 |
标記限定符表达式的开始要匹配 {,请使用 \{ |
指明两项之间的一个选择。要匹配 |请使用 \|。 |
有不少很有用的非打印字符偶尔必须使用。下表显示了用来表示这些非打印字符的转义序列:
匹配由x指明的控制字符例如, \cM 匹配一个 Control-M 或回车符 x 的值必须为 A-Z 或 a-z 之一。否则将 c 视为一個原义的 'c' 字符。 |
匹配一个换页符等价于 \x0c 和 \cL。 |
匹配一个换行符等价于 \x0a 和 \cJ。 |
匹配一个回车符等价于 \x0d 和 \cM。 |
匹配任何空白字符包括空格、淛表符、换页符等等。等价于 [ \f\n\r\t\v] |
匹配一个制表符。等价于 \x09 和 \cI |
匹配一个垂直制表符。等价于 \x0b 和 \cK |
句点 (.) 匹配一个字符串中任何单个的打印或非打印字符,除了换行符 (\n) 之外下面的 JScript 正则表达式可以匹配 'aac'、'abc'、'acc'、'adc'如此等等,同样也可以匹配 'a1c'、'a2c'、a-c'以及 a#c':