1.行定位符(^ $)
^ 表示行首
$ 表示行尾
栗子:
^chong 匹配以chong开始的行
chong$ 匹配以chong结束的行
chong 匹配任意位置chong的行
2.单词边界符(\b \B)
\b 表示匹配的字符必须是一个完整的单词
\B 表示匹配的字符不能是一个完整的单词
栗子:
\bhello\b 只有hello是一个完整的单词才能匹配
3.字符类([])
在[]里面可以写要匹配的字符,一个[]只能匹配一个字符
[a-z] 匹配任意小写字母
[0-9A-Z] 匹配任意数字或大写字母
4. 选择字符(|)
可以理解为 "或"
(a|b) 匹配a或者b
5.取反字符([^])
^只有放在[]里面才表示取反
[^0-9] 匹配不是数字的任意字符
6.限定符(. * ? + {m,n})
. 表示匹配一个任意字符
a* 表示匹配0个或者多个a
a? 表示匹配0个或者1个a
a+ 表示匹配1个或者多个a
a{5} 表示匹配5个a
a{5,} 表示最少匹配5个a
a{5,10} 表示匹配最少5-10个a
a{,5} 表示最多匹配5个a
7.转义字符(\)
像上面那些 . * ? + 这些在正则表达式中有特殊意义的符号,如果想要使用这些符号,
就需要转义一下
8.预定义字符
\d 任意数字
\D 任意不是数字的字符
\w 任意一个单词字符
\W 任意一个非单词字符
\s 任意一个空白字符
\S 任意一个非空白字符
9.括号字符(())
()可以进行分组,将括号里面的内容看成一个整体,跟我们平常理解的一样
10.词首、词尾定位符
\< 词首定位符
\> 词尾定位符