我对/ \ w \ b \ w /感到困惑。我认为它应该与“我们”中的“ e w”匹配,因为:
\ w是单词字符,即“ e”
\ b是单词broundary,即“”(空格)
\ w是另一个单词“ w”
因此,匹配项是“我们”中的“ e w”。但...
/ \ w \ b \ w /永远不会匹配任何内容,因为一个单词字符不能同时跟随非单词和单词字符。
我从MDN那里得到了这个:
我不明白他们的解释。您能帮我解释一下吗?谢谢!
关键是\b
含义。\b
匹配单词边界。单词边界与一个单词字符不跟随或不跟随另一个单词字符的位置相匹配。请注意,匹配的单词边界不包括在匹配中。换句话说,匹配的单词边界的长度为零。
所以\b
它本身不匹配任何东西,它只是一个条件,例如^
,$
依此类推。就像/^\w/
以单词字符开头的均值一样,/\w\b/
意思是一个单词字符之后没有一个单词字符。
在中"e w"
,/\w\b/
只有一个匹配项"e"
,在此匹配中一个单词字符之后没有一个单词字符是空格,但不是"e "
。
/\w\W/
"e "
参加比赛"e w"
。\b
只是条件不匹配。
/\w\b\w/
意思是单词字符后跟非单词和单词字符是矛盾的,因此永远不会匹配任何东西。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句