谁能解释\b和\w正则表达式元字符之间的区别?据我了解,这两个元字符都用于单词边界。除此之外,哪个元字符对于多语言内容有效?
\b
\w
元字符\b是锚号,例如插入号和美元符号。它在称为“单词边界”的位置匹配。此匹配为零长度。
有三个不同的位置可作为单词边界:
简而言之:\b允许你使用形式的正则表达式执行“仅全词”搜索\bword\b。阿“字字符”是可用于形成字的字符。不是“单词字符”的所有字符都是“非单词字符”。
\bword\b
在所有口味中,字符[a-zA-Z0-9_]都是文字字符。这些也与速记字符类匹配\w。在风味比较中显示单词边界的“ ascii”的风味仅将这些识别为单词字符。
[a-zA-Z0-9_]
“ ascii”
\w通常代表“文字字符”[A-Za-z0-9_]。请注意包含下划线和数字。
[A-Za-z0-9_]
\B是的否定版本\b。\B在每个\b不匹配的位置进行匹配。有效地,\B匹配两个单词字符之间的任何位置以及两个非单词字符之间的任何位置。
\B
\W是的缩写[^\w]版本\w。
\W
[^\w]