&l
基本元字符
| 元字符 | 说明 |
|---|---|
| . | 匹配任意单个字符 |
| | | 逻辑或操作符 |
| [] | 定义一个字符集合,匹配该集合中的一个字符 |
| [^] | 对字符集合求非(是对整个集合求非,而不是紧挨着^符号的字符) |
| - | 在字符集合中定义一个区间。如[A-Za-z] |
| \ | 对下一个字符转义。比如/n表示换行。 |
数量元字符
| 元字符 | 说明 |
|---|---|
| * | 匹配前一个字符(子表达式)零次或多次 (不过多次优先) |
| *? | *的懒惰型版本(防止正则表达式的“贪婪性”) |
| + | 匹配前一个字符或子表达式一次或多次 |
| +? | +的懒惰型版本 |
| ? | 匹配前一个字符或子表达式零次或一次 |
| {n} | 匹配前一个字符或子表达式的n次重复,比如[A-Z]{6}表示匹配由六个大写字母组成的字符串。 |
| {m,n} t;/td> | 匹配至少m次至多n次 |
| {m,} | 匹配至少m次 |
| {m,}? | {m,}的懒惰型版本 |
位置元字符
| 元字符 | 说明 |
| ^ | 行首 |
| $ | 行尾 |
| \< | 单词开头 |
| \> | 单词结尾 |
| \b | 单词边界(单词的开头和结束) |
| \B | \b的反义 |
特殊字符元字符
| 元字符 | 说明 |
|---|---|
| [\b] | 匹配一个退格字符 |
| \c | 匹配一个控制字符 |
| \d | 匹配任意一个数字字符,等价于[0-9] |
| \D | \d的反义 |
| \f | 换页符 |
| \n | 换行符 |
| \r | 回车符 |
| \s | 匹配一个空白字符 |
| \S | \s的反义 |
| \t | 制表符 |
| \v | 垂直制表符 |
| \w | 匹配任意字母、数字、下划线。等价于[A-Za-z0-9_] |
| \W | \w的反义 |
| \x | 匹配一个十六进制数字 |
| \0 | 匹配一个八进制数字 |
回溯引用和前后查找
| 元字符 | 说明 |
|---|---|
| () | 定义一个子表达式 |
| \1 | 第一个子表达式,同理/2表示第2个子表达式。/0通常表示整个正则表达式。 |
| ?= | 向前查找 |
| ?<= | 向后查找 |
| ?! | 负向前查找 |
| ?!= | 负向后查找 |
| ?() | 条件(if then) |
| ?()| | 条件(if then else) |
另外/E,/l,/L,/U,/u等表示大小写转换。(?m)表示使用分行匹配模式来匹配正则表达式。以上都使用 PHP中的preg系列函数测试过。对于特殊字符元字符,还有POSIX字符类: [:alnum:],[:alpha:],[:cntrl:],[:digit:],[:graph:],[:blank:],[:lower:],[:print:],[:punct:],[:space:],[:upper:],[:xdigit:]
390

被折叠的 条评论
为什么被折叠?



