语法
- 使用元字符的字面值:
\Q$\E === \$
- [^aeiou] 不匹配元音字符
- 两个字符组的并集
[0-3[6-9]]
- 匹配差集
[a-z&&[^m-r]] 匹配a到z之间的字符,但其中m-r的字符除外。
- 9* 匹配999999999999
- 量词
7+ == 7{1,}
7* == 7{0,}
7? == 7{0,1}
7{3,5} 会匹配三个,四个,以及5个7
5{2,5}? 懒惰量词,只匹配2次5
懒惰量词:
?? 懒惰匹配零次或1次
+? 懒惰匹配一次或多次
*? 懒惰匹配零次或多次
{n}? 懒惰匹配n次
{n,}? 懒惰匹配n次或多次
{m,n}? 懒惰匹配m至n次
- (?i) 不区分大小写
- 命名分组
命名分组
?<name>
引用分组名
\k'name'
匹配000000
(?<z>0{3})\k'z'
环视
- 正前瞻 ?=
要匹配单词ancyent(不区分大小写),且要求紧跟其后的单词是marinere
(?i)ancyent (?=marinere)
正前瞻.png
- 反前瞻 ?!
对正前瞻的取反操作
(?i)ancyent (?!marinere)
反前瞻.png
- 正后顾 ?<=
查看左边的内容,与正前瞻方向相反
(?i)(?<=ancyent) marinere
正后顾.png
- 反后顾 ?<!
(?i)(?<!ancyent) marinere
反后顾.png
网友评论