1. 基本元字符
元字符 | 说明 | 举例说明 |
---|---|---|
. | 匹配任意单个字符(换行符除外) | c.t 匹配:所有c和t之间隔一个字符的文本,如:cat, cbt, cct, ... |
[] | 匹配字符集合中的一个字符 | [abc] 匹配:a或b或c |
[^] | 对字符集合求非 | [^abc] 匹配:“非a非b非c”的任意字符 |
- | 定义一个区间 | [A-Z] 匹配:字母A,B,C,...,Z中的任意一个字符 |
对下一个字符转义 | 需要转义的字符: . [ ] ^ - * ? + ! { } $ ( ) |
2. 特殊元字符
元字符 | 说明 | 补充说明 |
---|---|---|
d | 匹配任意一个数字字符 | 等价于[0-9] |
D | d 的反义,匹配一个任意非数字字符 | 等价于[^0-9] |
w | 匹配任意一个“字母数字下划线”字符 | 等价于[A-Za-z0-9_] (最新的实现中可匹配一个汉字) |
W | w 的反义,匹配任意一个“非字母非数字非下划线”字符 | 等价于[^A-Za-z0-9_] |
f | 匹配一个换页符 | (属于空白字符) |
匹配一个换行符 | (属于空白字符) | |
匹配一个回车符 | (属于空白字符) | |
匹配一个制表符 | (属于空白字符) | |
v | 匹配一个垂直制表符 | (属于空白字符) |
[] | 匹配一个退格字符 | 不常用(属于空白字符) |
s | 匹配一个空白字符 | 包括上面的:f, , , , v, 注意:不包括[] |
S | s 的反义,匹配任意一个非空白字符, | 非 f, , , , v, 的任意字符 |
cx | 匹配一个控制字符 | 不常用,x为一个字母,用来表示特定的控制符。如:cM 匹配 Control-M或回车符 |
xn | 用一个ASCII字符的十六进制值去匹配这个ASCII字符 | 不常用,n为十六进制数表示 |