(?!pattern)
负向预查,在任何不匹配 Nagative lookahead matches the search at any point where a string not matching pattern 的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说该匹配不需要获取供以后使用。
x|y
匹配 x 或 y。
[xyz]
字符集和,匹配所包含的任意一个字符。
[^xyz]
负值字符集和,匹配未包含的任意字符。
[a-z]
匹配指定范围内的任意字符。
[^a-z]
匹配任何不在指定范围内的任意字符。
\b
匹配一个单词边界,也就是指单词和空格间的位置。
\B
匹配非单词边界。
\cx
匹配由 x 指明的控制字符。
\d
匹配一个数字字符。
\D
匹配一个非数字字符。
\f
匹配一个换页符。
\n
匹配一个换行符。
\r
匹配一个回车符。
\s
匹配任何空白字符,包括空格、制表符、换页符等。
\S
匹配任何非空白字符。
\t
匹配一个制表符。
\v
匹配一个垂直制表符。
\w
匹配包括下划线的任何单词字符。
\W
匹配任何非单词字符。
\xn
匹配 n,其中 n 为一个十六进制转义值。十六进制转义值必须为确定的两个数字长。
\num
匹配 num,其中 num 是一个正整数。对所获取的匹配的引用。
\n
标识一个八进制转义值或一个后向引用。
\nm
标识一个八进制转义值或一个后向引用。
\nml
如果 n 为八进制数字(0-3),且 m 和 1 均为八进制数字(0-7),则匹配八进制转义值 nml。