Python中的Perl正则表达式'\ K反斜杠序列是否有任何等价物?

时间:2016-09-23 15:08:20

标签: python regex perl

Perl的正则表达式具有\K反斜杠序列:

  


  这出现在perl 5.10.0中。 \K左边匹配的任何内容都不是   包含在$&中,如果在a中使用模式,则不会被替换   代换。这使您可以编写s/PAT1 \K PAT2/REPL/x而不是。{   s/(PAT1) PAT2/${1}REPL/xs/(?<=PAT1) PAT2/REPL/x

     

助记符:保持

Python中有什么相同的东西吗?

1 个答案:

答案 0 :(得分:8)

建议替换Python re模块available from pypi under the name regex,具有此功能。它的规范源代码存储库和错误跟踪器是in bitbucket

这是在2015年末,ticket 151添加的;从该票证中使用它的一个例子:

import regex as mrab
>>> bsk = mrab.compile(r'start=>\K.*')
>>> print(bsk.search('boring stuff start=>interesting stuff'))
<regex.Match object; span=(20, 37), match='interesting stuff'>