在Python中扩展字符串中的所有实例

时间:2011-10-21 11:41:42

标签: python regex string

目标是在源字符串中为所有出现的子字符串(不区分大小写)添加前缀和后缀。我基本上需要弄清楚如何从source_str到target_str。

source_str = 'You ARe probably familiaR with wildcard'
target_str = 'You [b]AR[/b]e probably famili[b]aR[/b] with wildc[b]ar[/b]d'

在这个例子中,我发现所有出现的'ar'(不区分大小写)并用本身(分别是AR,aR和ar)替换每个匹配项,并带有前缀([b] )和后缀([/ b])。

2 个答案:

答案 0 :(得分:4)

>>> import re
>>> source_str = 'You ARe probably familiaR with wildcard'
>>> re.sub(r"(ar)", r"[b]\1[/b]", source_str, flags=re.IGNORECASE)
'You [b]AR[/b]e probably famili[b]aR[/b] with wildc[b]ar[/b]d'

答案 1 :(得分:3)

这样的东西
import re
ar_re = re.compile("(ar)", re.I)
print ar_re.sub(r"[b]\1[/b]", "You ARe probably familiaR with wildcard")

也许?