Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 正则表达式:匹配任何单词(包括foobar),但不匹配foo_Python_Regex - Fatal编程技术网

Python 正则表达式:匹配任何单词(包括foobar),但不匹配foo

Python 正则表达式:匹配任何单词(包括foobar),但不匹配foo,python,regex,Python,Regex,我对regex很陌生,我已经看过了,但还没有找到我要找的语法 我想匹配任何单词(包括foobar),但不匹配foo。然而,我发现的每一件事都能抓住foobar和foo 正确的方法是什么?我在用Python,如果这很重要的话(?!^foo$)^\w+$ 这是一个否定的前瞻(?!),表示不匹配单词foo,但匹配任何其他单词 ^和$分别断言字符串的开头和结尾\w+表示匹配任何单词字符中的一个或多个 举个例子: 任何以f或o开头的单词都会失败。谢谢,修复了它!我相信OP试图找出如何匹配整个单词而不是它们

我对regex很陌生,我已经看过了,但还没有找到我要找的语法

我想匹配任何单词(包括foobar),但不匹配foo。然而,我发现的每一件事都能抓住foobar和foo

正确的方法是什么?我在用Python,如果这很重要的话

(?!^foo$)^\w+$

这是一个否定的前瞻
(?!)
,表示不匹配单词
foo
,但匹配任何其他单词

^
$
分别断言字符串的开头和结尾
\w+
表示匹配任何单词字符中的一个或多个

举个例子:


任何以
f
o
开头的单词都会失败。谢谢,修复了它!我相信OP试图找出如何匹配整个单词而不是它们的部分。这确实匹配整个单词而不是它们的部分…@Mako212尝试在foobar的末尾添加句点——不匹配。虽然您可以修改它来处理标点符号,但正则表达式使我们远离了更简单、更常用的单词边界概念,我认为这是初学者应该首先了解的。一些输入/输出示例如何?试试
\b(?!foo\b)\w+