在Python中,如何替换字符串并检索替换的子字符串?

在Python中,如何替换字符串并检索替换的子字符串?,python,regex,Python,Regex,我将用Perl编写: $x = "abbbc"; $x =~ s/(b+)/z/; print "Replaced $1 and ended up with $x\n"; # "Replaced bbb and ended up with azc" 在Python中如何实现这一点——替换正则表达式字符串并记录被替换的内容?Python不会同时返回匹配和替换。对返回的匹配对象调用group(0),将找到匹配的子字符串: >>> r=re.compile('(b+)') >

我将用Perl编写:

$x = "abbbc";
$x =~ s/(b+)/z/;
print "Replaced $1 and ended up with $x\n";
# "Replaced bbb and ended up with azc"

在Python中如何实现这一点——替换正则表达式字符串并记录被替换的内容?

Python不会同时返回匹配和替换。对返回的匹配对象调用
group(0)
,将找到匹配的子字符串:

>>> r=re.compile('(b+)')
>>> r.search('abbbc')
<_sre.SRE_Match object at 0x7f04af497af8>
>>> r.search('abbbc').group(0)
'bbb'
>>> r.sub('z', 'abbbc')
'azc'
>r=re.compile('(b+))
>>>r.search('abbbc')
>>>r.search('abbbc')。组(0)
“bbb”
>>>r.sub('z','abbbc')
“azc”