python - 反斜杠序列不匹配

标签 python regex regex-lookarounds

我希望在负向前瞻内有一个单词边界。然而,正如您在下面的示例中看到的,这在 Python 中似乎不起作用。这是不支持的吗?如果是这样,有没有办法解决?

要说明我正在尝试解决的完整问题:我在 re.sub 中使用了一个正则表达式,并且有几个特定的​​单词(例如“455”)想要特别不匹配。

In [8]: print re.match('(?!455)455', '455')
None

In [9]: print re.match('(?!455\b)455', '455')
<_sre.SRE_Match object at 0x1108fb440>

最佳答案

\b 是一个转义序列,因此它将匹配反斜杠字符 ASCII 0x08。您需要转义反斜杠或使用 raw string literals :

>>> print(re.match(r'(?!455\b)455', '455'))
None

关于python - 反斜杠序列不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12572406/

相关文章:

带有特殊字符的正则表达式环视无效?

regex - JavaScript RegEx,与 OR 的零长度匹配(也许可以向前看和向后看)

regex - 正则表达式考虑字符串中的特殊字符

python - 如何匹配 json 汤中的确切单词?

java - Akamai 上的 RSS 源 : Any way to programmatically check various geo-locations?

regex - grep 带有字符串变量和正则表达式

java - 国际电话的正则表达式

python - 尝试从导入的脚本导入脚本时出现“ModuleNotFoundError”

python - 在 flaskext.mysql 中寻找 dictcursor 的等价物

MySql 正则表达式测试