如何匹配javascript正则表达式中的非单词+单词边界

时间:2018-05-02 14:29:28

标签: regex

如何匹配javascript正则表达式中的非单词+单词边界。

"This is, a beautiful island".match(/\bis,\b/) 

在上面的例子中,为什么正则表达式引擎不匹配直到,并且假设空间是一个单词边界而不进一步移动。

2 个答案:

答案 0 :(得分:2)

\b断言字词\w符合非字字符\W的位置,反之亦然。逗号是一个非单词字符,空格也是如此。所以\b永远不会匹配逗号和空格之间的位置。

此外,您忘记在正则表达式中添加结尾分隔符。

答案 1 :(得分:0)

您可以在逗号后使用\B匹配\b不匹配的地方,因为逗号不被视为单词字符。



console.log( "This is, a beautiful island".match(/\bis,\B/) )
//=> ["is,"]