使用re.sub时重复模式

时间:2013-03-30 16:23:13

标签: python regex python-3.x

我想修改一个如下所示的字符串:

...some fruit names... ORANGE ...some fruit names...

这样的事情:

...some fruit names... ORANGE APPLE ...some fruit names...

使用sed我会做类似的事情:

sed 's/ORANGE/& APPLE/' <<< $the_string

但是我不知道如何使用Python的re模块来做这种事情。是否有一个特殊的符号,其中fonction等同于&的{​​{1}}?我在文档中没有找到这样的内容。

到目前为止,我所做的是从字符串中提取模式sed(以获得它的文字形式),将字符串ORANGE附加到其上,然后替换为APPLE我形成的字符串。但效率非常低,我想用一个正则表达式做同样的事情。

1 个答案:

答案 0 :(得分:2)

re.sub('(ORANGE)',r' \1 APPLE', str)会这样做