1.正则表达式语法知识
①常见正则表达式使用字符及其含义
. #匹配除换行符之外的任意单个字符
* #匹配位于*之前的字符或子模式的0次或多次出现
+ #匹配位于+之前的字符或子模式的1次出现或多次出现
- #用于[]之中表示范围
| #匹配位于|之前或之后的字符
^ #匹配行首,匹配以^后面的字符为开头的字符串,类似于^···
$ #匹配行尾,匹配以$之前的字符结束的字符串,类似于···$
? #匹配位于"?"之前的0个或1个字符,如果?字符紧接其他限定符(*、+、?、{n}、{n,}、{n.m})之后,即匹配模式服从“非贪心模式”,例如"o+?"只匹配一个o;反之则为匹配方法为“贪心模式”,例如"oooo"中o+匹配所有o
\ #表示位于\之后的转义字符
\num #此处的num为一个正整数,例如,"(.)"\1匹配连续两个相同的字符
\f #换页符匹配
\n #换行符匹配
\r #匹配一个回车
\b #匹配单词头或单词尾
\B #匹配单词主体(与/b相反)
\d #匹配任何数字,相当于[0-9]
\D #与\d意义相反,相当于[^0-9]
\s #匹配任何空白字符,包括空格、制表符、换页符,与[\f\n\r\t\v]
\S #与\s意义相反
\w #匹配任何字母、数字及下划线,相当于[a-zA-Z0-9_]
\W #与\w意义相反,相当于[^a-zA-Z0-9]
() #将位于()内的内容作为一个整体来对待
{
} #按{}中的次数来进行匹配
[] #匹配位于[]中的任意一个字符
[^xyz] #反向字符集,匹配除x,y,z之外的字符
[a-z] #字符范围,匹配指定范围内的所有字符
[^a-z]