原子
原子也叫元字符,是正则表达式的基本组成单位; 通常一个原子匹配字符串中的一个字符。我们把原子分为如下几类
1 字符串直接量
首先, 一个标点符号,一个字母,一个汉字都可以当做一个原子; 此外还有如下的不可见字符
原子(元字符) | 描述 |
---|---|
\n |
查找换行符。 |
\f |
查找换页符。 |
\r |
查找回车符。 |
\t |
查找制表符。 |
\v |
查找垂直制表符。 |
\uxxxx |
查找以十六进制数 xxxx 规定的 Unicode 字符。 |
2 字符类
元字符 | 描述 |
---|---|
[abc] |
匹配方括号之间的任何字符 例 [abc] 、[a-z] 、[b-f0-9] 、[a-z0-9_] |
[^abc] |
查找任何不在方括号之间的字符。 |
. |
匹配除了换行和行结束符外所有的字符。 [^\n] |
\w |
匹配数字、字母或下划线 [a-zA-Z0-9_] |
\W |
匹配除了数字、字母或下划线以外的字符 [^a-zA-Z0-9_] |
\d |
匹配数字字符 [0-9] |
\D |
匹配非数字字符 [^0-9] |
\s |
匹配空白字符 [\n\t\v\r\f] |
\S |
匹配空白字符以外的其他字符 [^\n\t\v\r\f] |
[0-9] 查找任何从 0 至 9 的数字。
[a-z] 查找任何从小写 a 到小写 z 的字符。
[A-Z] 查找任何从大写 A 到大写 Z 的字符。
[A-z] 查找任何从大写 A 到小写 z 的字符。
[adgk] 查找给定集合内的任何字符。
[^adgk] 查找给定集合外的任何字符。
3 特殊字符
如果要匹配的字符是在正则中具有特殊意义的符号,可以使用反斜杠\
来转义;
例如:\.
匹配字符串.