字面量字符
- 字面量字符就是说字面的意思,匹配的就是完全展示出来的字符,例如:/dog/匹配dog。
元字符
- 点字符
匹配除了回车(\r)、换行(\n)、行分隔符(\u2028)、段分隔符(\u2029) - 位置字符
^表示字符串开始匹配的位置
$表示字符串结束匹配的位置 - 选择符
在正则表达式中表示的是”或“的意思,匹配其中一个就为true
特殊字符
- \cX 表示Ctrl-[X],其中的X是A-Z之中任一个英文字母,用来匹配控制字符。
- [\b] 匹配退格键(U+0008),不要与\b混淆。
- \n 匹配换行键。
- \r 匹配回车键。
- \t 匹配制表符 tab(U+0009)。
- \v 匹配垂直制表符(U+000B)。
- \f 匹配换页符(U+000C)。
- \0 匹配null字符(U+0000)。
- \xhh 匹配一个以两位十六进制数(\x00-\xFF)表示的字符。
- \uhhhh 匹配一个以四位十六进制数(\u0000-\uFFFF)表示 的 Unicode 字符。
字符类
- 脱字符
只有在字符类的第一个位置才有特殊含义,不然就是字面含义。 - 连字符
预定义模式
- \d 匹配0-9之间的任一数字,相当于[0-9]。
- \D 匹配所有0-9以外的字符,相当于[^0-9]。
- \w 匹配任意的字母、数字和下划线,相当于[A-Za-z0-9_]。
- \W 除所有字母、数字和下划线以外的字符,相当于[^A-Za-z0-9_]。
- \s 匹配空格(包括换行符、制表符、空格符等),相等于[ \t\r\n\v\f]。
- \S 匹配非空格的字符,相当于[^ \t\r\n\v\f]。
- \b 匹配词的边界。
- \B 匹配非词边界,即在词的内部。