【发布时间】:2018-08-25 04:53:00
【问题描述】:
我对正则表达式很陌生,我已经看过但没有找到我正在寻找的语法。
我想匹配任何单词(包括 foobar),但不匹配 foo。然而,我发现的所有东西都用 foo 捕获了 foobar。
这样做的正确方法是什么?如果这很重要,我正在使用 Python 工作
【问题讨论】:
-
一些输入/输出示例怎么样?
-
试试
\b(?!foo\b)\w+
我对正则表达式很陌生,我已经看过但没有找到我正在寻找的语法。
我想匹配任何单词(包括 foobar),但不匹配 foo。然而,我发现的所有东西都用 foo 捕获了 foobar。
这样做的正确方法是什么?如果这很重要,我正在使用 Python 工作
【问题讨论】:
\b(?!foo\b)\w+
(?!^foo$)^\w+$
这是对(?!) 的负面展望,表示不匹配单词foo,但匹配任何其他单词。
^ 和 $ 分别断言字符串的开始和结束。 \w+ 表示匹配任意单词字符中的一个或多个。
还有一个例子:
【讨论】:
f 或o 开头的单词上都失败。