| 表示或的意思
(rea|blue) 字串red或blue
^ 用在正则单元块的开头处,表示必须以指定的开头
$ 用在正则单元块的结尾处,表示必须以指定的结尾
. 表示任意一个除换行符之外的字符
常用组合: .*? 表示最小匹配所有字符(拒绝贪婪匹配)
3. 普通转义字符:
\d | 匹配一个数字;等价于[0-9] |
\D | 匹配除数字以外任何一个字符;等价于[^0-9] |
\w | 匹配一个英文字母、数字或下划线;等价于[0-9a-zA-Z_] |
\W | 匹配除英文字母、数字和下划线以外任何一个字符;等价于[^0-9a-zA-Z_] |
\s | 匹配一个空白字符;等价于[\f\n\r\t\v] |
\S | 匹配除空白字符以外任何一个字符;等价于[^\f\n\r\t\v] |
\f | 匹配一个换页符等价于 \x0c 或 \cL |
\n | 匹配一个换行符;等价于 \x0a 或 \cJ |
\r | 匹配一个回车符等价于\x0d 或 \cM |
\t | 匹配一个制表符;等价于 \x09\或\cl |
\v | 匹配一个垂直制表符;等价于\x0b或\ck |
\oNN | 匹配一个八进制数字 |
\xNN | 匹配一个十六进制数字 |
\cC | 匹配一个控制字符 |
4. 模式修整符
i 表示不区分大小写;
"/[a-zA-Z]/" <==>"/[a-z]/i"
s 表示匹配视为单行(就是可以让点.支持换行)
U 表示拒绝贪婪匹配