1.限定符:(“ ?”,“ + ”,“ * ”)
?:前边修饰的字符需要出现0次或1次 ,修饰字符可有可无
*:前边修饰的字符,出现0次或多次
+ :修饰的字符,出现1次以上
若是指定修饰字符出现次数 : ab{指定次数}c
若是指定修饰字符出现次数范围为[3,5]:ab{3,5} c
若是指定修饰字符出现次数范围为3到无穷大:ab{3,} c
–> 若是修饰多个字符 用括号括起来
即: (ab){2,}c
2.或 |
a(b|c): 匹配a后边是b或者c的字符串
3.字符类[ ]
[abc]: 匹配由abc构成的单词
可以在[]里面指定范围:
[a-z]:所有的小写字母
[A-Z]:所有的大写字母
[0-9]:所有数字
[a-zA-Z0-9]:所有的大小写字母和数字
若[^]:匹配除了尖号后边列出的【以外】的字符
4.元字符
正则表达式中定义好的一系列常用字符类型
大部分都是以\开头:
\d 代表数字字符 等于 [0-9]
\w 代表单词字符(英文、数字和下划线)
\s 代表空白符(包含Tab和换行符)
\b 代表单词字符边界
\B 代表非单词字符边界
\D 代表非数字字符
\W 代表非单词字符
\S 代表非空白符
. 代表任意字符(不包括换行符)
^ 匹配行首
$ 匹配行尾
5.贪婪与懒惰匹配
贪婪匹配:匹配的时候默认会匹配尽可能多的字符 * + {}
懒惰匹配:在匹配符号右边再加一个?,将默认的贪婪匹配切换为懒惰匹配