曲径通幽论坛

标题: 元字符 [打印本页]

作者: beyes    时间: 2012-5-21 00:34
标题: 元字符
元字符就是用于构建正则表达式的具有特殊含义的字符,如 '?',‘*’, ‘+’ 等。如果要匹配元字符本身,可以在其前面加上反斜杠 '\' 使其失去特殊含义。下表汇总了这些特殊的字符:

元字符含义描述
\d匹配任意一个十进制数字,等价于[0-9]
\D匹配任意一个除了十进制数字意外的字符,等价于[^0-9]
\s匹配任意一个空白字符,等价于[\f\n\r\t\v]
\S匹配除了空白字符意外的任何一个字符,等价于[^\f\n\r\t\v]
\w匹配任意一个数字,字母或下划线,等价于[0-9a-zA-Z]
\W匹配除了数字,字母或下划线以外的任意一个字符,等价于[^0-9a-zA-Z]
*匹配 0 次,1次或多次其前面面的原子
+匹配 1 次或多次其面前的原子
?匹配 0 次或 1 次其前面的原子
.
匹配除了换行符外的任意一个字符
|
匹配两个或多个分支选择
{n}
表示其前面的原子恰好出现 n 次
{n, }
表示其前面的原子出现不少于 n 次
{n, m}
表示其前面的原子至少出现 n 次,最多出现 m 此
^ 或 \A
匹配输入字符串的开始位置(或在多行模式下的开头,即紧随一换行符之后)
$ 或 \Z
匹配输入字符串的结束位置(或在多行模式下行的结尾,即紧随一换行符之前
\b
匹配单词的边界
\B
匹配除了单词边界以外的部分
[]
匹配方括号中指定的任意一个原子
[^]
匹配除了方括号中的原子以外的任意一个字符
()
匹配其整体为一个院子,即模式单元。可以理解为由多个单个原子组成的大原子

原子的概念
原子是正则表达式的最基本组成单位,而且在每个模式中至少包含一个原子。原子是由所有那些未显式指定为元字符的打印和非打印字符组成,包括所有的大写和小写字母字符,所有数字,所有标点符号以及一些其他符号。




欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) Powered by Discuz! X3.2