常用正则表达式语法例句
这里有一些可能会碰到的正则表达式示例:
/^[ t]*$/ '^[ t]*$' 匹配一个空缺行。
/d{2}-d{5}/ 'd{2}-d{5}' 验证一个ID号码是否由一个2位字,一 个连字符以及一个5位数字组成。
/<(.*)>.*1>/ '<(.*)>.*1>' 匹配一个 HTML 标记。
下表是元字符及其在正则表达式高低文中的行动的一个完整列表:
字符 描写
将下一个字符标记为一个特别字符、或一个原义字符、或一个 后向引用、或一个八进制转义符。例如,’n’ 匹配字符 'n'。’n’ 匹配一个换行符。序列 ’\’ 匹配 '' 而 '(' 则匹配 '('。
^ 匹配输进字符串的开端地位。假如设置了 RegExp 对象的Multiline 属性,^ 也匹配 ’n’ 或 ’r’ 之后的地位。
$ 匹配输进字符串的结束地位。假如设置了 RegExp 对象的Multiline 属性,$ 也匹配 ’n’ 或 ’r’ 之前的地位。
* 匹配前面的子表达式零次或多次。例如,zo* 能匹配 'z' 以及'zoo'。 * 等价于{0,}。
匹配前面的子表达式一次或多次。例如,’zo ’ 能匹配 'zo' 以及 'zoo',但不能匹配 'z'。 等价于 {1,}。
? 匹配前面的子表达式零次或一次。例如,'do(es)?' 可以匹配'do' 或 'does' 中的'do' 。? 等价于 {0,1}。
{n} n 是一个非负整数。匹配断定的 n 次。例如,’o{2}’ 不能匹配'Bob' 中的 ’o’,但是能匹配 'food' 中的两个 o。
{n,} n 是一个非负整数。至少匹配n 次。例如,’o{2,}’ 不能匹配'Bob' 中的 ’o’,但能匹配 'foooood' 中的所有 o。’o{1,}’等价于 ’o ’。’o{0,}’ 则等价于 ’o*’。
{n,m} m 和 n 均为非负整数,其中n <= m。最少匹配 n 次且最多匹配 m 次。刘, 'o{1,3}' 将匹配 'fooooood' 中的前三个o。’o{0,1}’等价于’o?’。请留心在逗号和两个数之间不能有空格
? 当该字符紧跟在任何一个其他限制符 (*, , ?, {n}, {n,},{n,m}) 后面时,匹配模式是非贪婪的。非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。例如,对于字符串 'oooo',’o ?’ 将匹配单个'o',而 ’o ’ 将匹配所有 ’o’。
. 匹配除 'n' 之外的任何单个字符。要匹配包含 ’n’ 在内的任何字符,请应用象 ’[.n]’ 的模式。
(pattern) 匹配pattern 并获取这一匹配。所获取的匹配可以从产生的Matches 聚集得到,在VBScript 中应用 SubMatches 聚集,在Visual Basic Scripting Edition 中则应用 $0…$9 属性。要匹配圆括号字符,请应用 ’(’ 或 ’)’。
(?:pattern) 匹配 pattern 但不获取匹配成果,也就是说这是一个非获取匹配,不进行存储供以后应用。这在应用 '或' 字符 (|) 来组合一个模式的各个部分是很有用。例如, ’industr(?:y|ies) 就是一个比 ’industry|industries’ 更简略的表达式。
常用正则表达式语法例句