基本元字符
元字符 说明
. 匹配任意单个字符
| 逻辑或操作符
[] 定义一个字符集合,匹配该集合中的一个字符
[^] 对字符集合求非(是对整个集合求非,而不是紧挨着^符号的字符)
- 在字符集合中定义一个区间。如[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:]
正则表达式元字符列表
最新推荐文章于 2025-08-15 22:44:18 发布