最近重新看了一遍 iOS 的正则文档,简单翻译下文档中涉及到的符号
1.正则表达式元字符
符号 | 说明 |
---|---|
a | 响铃, u0007 |
A | 匹配输入的开始,只匹配第一行,也就是忽略多行选项 |
不在[]包含时,匹配单词的边界,也就是w和W的中间 | |
在[]包含的集合内,匹配 BACKSPACE, u0008 | |
B | 当前位置不是单词的边界 |
cX | Ctrl+X |
d | 所有十进制数字 Nd |
D | 所有非十进制数字 |
e | ESCAPE, u001B. |
E | 结束Q...E引用段 |
f | 匹配换页符 FORM FEED, u000C |
G | 当前位置是上个匹配的结束处,第一次匹配的是单词的开始 |
换行符 LINE FEED, u000A. | |
N{UNICODE CHARACTER NAME} | 匹配Unicode 命名对应的字符。见参考3 |
p{UNICODE PROPERTY NAME} | 匹配对应命名字符集里的字符 |
P{UNICODE PROPERTY NAME} | 匹配不在命名字符集里面的字符 |
Q | 引用字符直到E结束,这个引用区间的字符都不需要转义符 |
回车 CARRIAGE RETURN, u000D | |
s | 空白字符,[ f p{Z}] |
S | 非空白字符 |
水平制表符 | |
uhhhh | 匹配Unicode代码中十六进制代码为hhhh的字符 |
Uhhhhhhhh | 匹配Unicode代码中十六进制代码为hhhhhhhh的字符,必须是8位,虽然最大的Unicode 值是U0010ffff |
w | 匹配一个单词字符 [p{Ll}p{Lu}p{Lt}p{Lo}p{Nd}] |
W | 匹配所有的非单词字符 |
x{hhhh} | 匹配十六进制hhhh表示的字符,支持1-6位 |
xhh | 匹配2位十六进制hh表示的字符 |
X | 匹配一个字符群集(Grapheme Cluster) |
匹配输入的结束,如果最后一行后面还有换行符,也匹配 | |
z | 匹配输入的结束 |
回溯引用,匹配第n个匹配,n ≥ 1 并且 ≤ 总匹配数量 | |