我知道大多数正则表达式引擎,包括 JavaScript 中的引擎,都\b
必须匹配单词边界,无论是在单词的开头还是结尾。
但 Vim 还有两个更具体的正则表达式原子:
JavaScript 是否具有这些原子的等价物,如果没有,是否有办法以其他方式表达它们更精确的语义?
我知道大多数正则表达式引擎,包括 JavaScript 中的引擎,都\b
必须匹配单词边界,无论是在单词的开头还是结尾。
但 Vim 还有两个更具体的正则表达式原子:
JavaScript 是否具有这些原子的等价物,如果没有,是否有办法以其他方式表达它们更精确的语义?
据我所知,没有任何预定义的。但是你可以做的是,在单词边界上添加一个前瞻,检查它是单词的开头还是结尾。
\<
那时会\b(?=\w)
。这将检查单词边界之后是否有单词字符跟随 ==> 单词的开头。将此作为 regexr 上的示例
\>
那时会\b(?!\w)
。这将检查单词边界之后是否没有单词字符跟随 ==> 单词结尾