正则表达式速查表(.NET)

元字符 说明

^ 匹配字符串的开始位置

$ 匹配字符串的结束位置

. 匹配任意单个字符(换行符 \n 除外)

| 交替

{…} 指定要限定的数量

[...] 指定要匹配的字符集

(…) 对表达式进行逻辑分组

* 匹配零或多个前面的表达式

+ 匹配一或多个前面的表达式

? 匹配零或一个前面的表达式

\ 放在上面任何一个字符之前,表示匹配该字符本身。放在其他特殊字符后面,表示字符转义(见下面)

字符转义 说明

原始字符 除 . $ ^ { [ ( | ) ] } * + ? \ 之外的字符均匹配自身

\a 匹配铃声(闹铃)\u0007

\b 在[]中匹配一个空格 \u0008,在其他情况下匹配字边界(位于 \w 和 \W 字符之间)

\t 匹配制表符 \u0009

\r 匹制回车符 \u000D

\v 匹配垂直制表符 \u000B

\f 匹配换页符 \u000C

\n 匹配换行符 \u000A

\e 匹配退出键(符) \u001B

\040 匹配以八进制表示的 ASCII 字符(最多三位数);在没有前导零的情况下,如果只有一位数字或者相应数字与某个捕获组的编号对应,那就是反向引用(backreference)。字符 \040 表示一个空格。

\x20 匹配以十六进制表示的 ASCII 字符(两位数)

\cC 匹配 ASCII 控制符,例如 \cC 匹配 Ctrl+C

\u0020 匹配以十六进制表示的 Unicode 字符

\* 反斜杠后面如果不是一个可转义的字符,则匹配该字符本身。例如,\* 就相当于\x2A

字符类 说明

. 匹配除 \n 之外的任意字符。

[aeiou] 匹配特定字符集中包含的任意一个字符

[^aeiou] 匹配特定字符集中不包含的任意一个字符

[0-9a-fA-F] 连字符(-)用来指定连续的字符范围

\p{name} 匹配由{name}指定的命名字符类中的任意字符

\P{name} 匹配不包含在{name}指定的组或块范围中的文本

\w 匹配英文数字字母字符,在指定兼容ECMAScript的情况下,等价于[a-zA-Z0-9]

\W 匹配非英文数字字母字符,在指定兼容ECMAScript的情况下,等价于[^a-zA-Z0-9]

\s 匹配任意空白字符,在指定兼容ECMAScript的情况下,等价于[\f\n\r\t\v]

\S 匹配任意非空白字符,在指定兼容ECMAScript的情况下,等价于[^\f\n\r\t\v]

\d 匹配数字字符,在指定兼容ECMAScript的情况下,等价于[0-9]

\D 匹配非数字字符,在指定兼容ECMAScript的情况下,等价于[^0-9]

posted @ 2011-04-09 14:19  Crazy Coder  阅读(396)  评论(0编辑  收藏  举报