与字边界相比,正则表达式 (\B) 中的非字边界是什么?
最佳答案
字边界 (\b
) 是零宽度匹配,可以匹配:
- 在单词字符 (
\w
) 和非单词字符 (\W
) 之间或 - 单词字符与字符串的开头或结尾之间。
在 Javascript 中,\w
的定义是 [A-Za-z0-9_]
,\W
是其他任何内容。
\b
的否定版本,写作 \B
,是一个零宽度匹配,上面的内容不成立。因此它可以匹配:
- 两个单词字符之间。
- 两个非单词字符之间。
- 非单词字符与字符串的开头或结尾之间。
- 空字符串。
例如,如果字符串是 "Hello, world!"
则 \b
在以下位置匹配:
H e l l o , w o r l d !
^ ^ ^ ^
并且 \B
匹配 \b
不匹配的地方:
H e l l o , w o r l d !
^ ^ ^ ^ ^ ^ ^ ^ ^ ^
关于javascript - 与字边界相比,正则表达式 (\B) 中的非字边界是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4541573/