推荐导航
0.系统学习导航传送
一.
二.
1、[]字符集合
字符集合是一些字符的集合,可以同&&[],来创造集合和集合的交集。
需要注意的是,一个[]集合在正则表达式中只代表一个字符的匹配,匹配多字符需要数量的修饰符。
[abc] 只有abc 3个字符的集合
[a-z] 有a到z 26个字符的集合
[^a-z] 除了a到z的其他所有字符的集合,^符号写在[]里是补集的意思,但它另有其他含义。
[a-z&&[^a-c]] 除了abc外的其他所有小写的字母
[a-zA-Z0-9@!#] 小写所有字母,大写所有字母,所有数字,加上@!#的字符的集合。
2、预定义字符集
一些规定好的字符集,相当于一个[]
. 任意一个字符
\d 任意一个数字,相当于[0-9]
\w 任意一个单词字符,相当于[a-zA-Z0-9]
\s 任意一个空白字符,如:空格、换行、转义等,相当于[\t\n\x0B\f\r]
\D 非数字
\W 非单词字符
\S 非空白字符
3、数量词
数量词跟在正则表达式的某个字符或集合、分组之后,表示该单位匹配的数量,如:a*,匹配0到任意多个字符。
a? 表示0个或1个a
a* 表示0个或任意多个a
a+ 表示1个到任意多个a
a{n} 表示n个a
a{n,} 表示n到任意多个a
a{n,m} 表示n到m个a
用法: a?
[agc]? \d?
(/d[agc])?