谁能解释一下这个正则表达式 \b((?abc)\w)+\b
看了一篇教程,匹配不包含连续字符串abc的单词
但我还是看不懂怎样做到的
人气:241 ℃ 时间:2020-05-19 13:29:23
解答
应该是没理解(?!abc)的意义,!)匹配的是一个位置,不占用任何字符.
!abc)的意义就是从当前匹配到的位置起,接下来不是一个字符"a"接着一个字符"b"接着一个字符"c".
!abc)\w的意义是用(?!abc)来限定\w的匹配,从\w的位置起不能出现一个字符"a"接着一个字符"b"接着一个字符"c".
((?!abc)\w)+就是多个被限定的\w组成的单词,这个单词中肯定不会出现"abc".
再举个例子:
!office)[a-z]+2000:不匹配"office2000",匹配"windows2000"
!a11)a:匹配"a10a11a12"中的第一个和第三个"a"
推荐
猜你喜欢
- 如图所示,物体处于平衡状态,若保持a不变,当力F与水平方向夹角β多大时F有最小值( ) A.β=0 B.β=π2 C.β=α D.β=2α
- 人体呼出的氮气和吸入氮气含量有没有发生变化
- 一台座钟,它的分针长5厘米.这台座钟的分针的针端一天所走的路程是多少米?
- 滑轮组可以省力,改变用力方向,不能同时省力又省距离
- 若直线l1:y=k(x-4)与直线l2关于点(2,1)对称,则l2直线恒过点(0,2).(0,2)点怎么算的?
- 英语翻译
- 那个男孩比班上任何一个学生都高.That boy is ( )( )( )( )in the class.
- 如图:四边形ABCD为菱形,对角线AC=8,BD=6,对角线相交于点O,P是边AD上一点(P与D点可重合)