我有一个大量使用正则表达式的 python 模板引擎。它使用如下连接:
re.compile( regexp1 + "|" + regexp2 + "*|" + regexp3 + "+" )
我可以修改各个子字符串(regexp1、regexp2 等)。
是否有任何不匹配的小而轻的表达式,我可以在我不想要任何匹配的模板中使用它?不幸的是,有时 '+' 或 '*' 会附加到正则表达式原子,所以我不能使用空字符串 - 这会引发“没有重复”的错误。
最佳答案
这不应该匹配任何东西:
re.compile('$^')
因此,如果您将 regexp1、regexp2 和 regexp3 替换为 '$^',将无法找到匹配项。除非您使用的是多行模式。
经过一些测试,我找到了更好的解决方案
re.compile('a^')
无法匹配,并且会比之前的解决方案更早失败。您可以将 a 替换为任何其他字符,并且始终无法匹配
关于python - "match nothing"的正则表达式语法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/940822/