Python 正则表达式中的错误? (re.sub 与 re.MULTILINE)

2024-02-22

我注意到 Python 的 Regex 库中有一些奇怪的行为,并且我不确定我是否做错了什么。

如果我使用正则表达式对其运行re.sub(), with re.MULTILINE。它似乎只替换了前几次出现的情况。如果我关闭它,它会替换所有出现的情况re.MULTILINE, use re.subn(..., count = 0, flags = re.MULTILINE),或使用编译正则表达式re.compile(..., re.MULTILINE).

我在 Ubuntu 12.04 上运行 Python 2.7。

我在以下位置发布了一个随机示例:

  • Pastebin.com http://pastebin.com/49SU8Mm2- 终端输出
  • codepad http://codepad.org/2RO2iS4O- 脚本,确认行为(除了 re.subn(),它在 2.5 上有所不同)

有人可以在他们的机器上确认/否认这种行为吗?

编辑:意识到我应该继续将其发布到 Python 错误跟踪器上。 编辑 2:报告的问题:http://bugs.python.org/msg168909 http://bugs.python.org/msg168909


Use

re.sub(pattern, replace, text, flags=re.MULTILINE) 

代替

re.sub(pattern, replace, text, re.MULTILINE) 

这相当于

re.sub(pattern, replace, text, count=re.MULTILINE)

这是你的代码中的一个错误。

See re.sub() http://docs.python.org/library/re.html#re.sub

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python 正则表达式中的错误? (re.sub 与 re.MULTILINE) 的相关文章

随机推荐