如何匹配不属于某个单词的特定单词?例如,我希望正则表达式检测三个“on”,但不检测“long”中的一个。
长月日abc月**日
当我使用(?: |^)the|on|of(?: |$)时,它也会检测到“long”中的“on”,这不是我要找的。
(?: |^)the|on|of(?: |$)
bnlyeluc1#
这里有两件事要提一下:
\b
所以你需要
\b(?:the|on|of)\b
参见this regex demo。
在图中可以看到,单词边界现在属于使用|运算符列出的所有替换项,因为它们都用non-capturing group括起来了。
|
0mkxixxg2#
您可以使用以下正则表达式:
/\bon\b/
\b标记匹配任何单词边界,它们是空格、字符串开头还是结尾等。所以这很简单:您需要单词on,它被单词边界包围。
on
2条答案
按热度按时间bnlyeluc1#
这里有两件事要提一下:
\b
所以你需要
参见this regex demo。
在图中可以看到,单词边界现在属于使用
|
运算符列出的所有替换项,因为它们都用non-capturing group括起来了。0mkxixxg2#
您可以使用以下正则表达式:
\b
标记匹配任何单词边界,它们是空格、字符串开头还是结尾等。所以这很简单:您需要单词
on
,它被单词边界包围。