擅长:python、mysql、java
<p>顺便说一下,使用<strong>findall_replace()</strong>的代码是不安全的,它可以返回未等待的结果:</p>
<pre><code>ch = 'sea sun ABC-ABC-DEF bling ranch micABC-DEF fish'
import re
def findall_replace(text, reg, rep):
for gr in reg.findall(text):
text = text.replace(gr, rep)
print 'group==',gr
print 'text==',text
return '\nresult is : '+text
pat = re.compile('ABC-DE')
rep = 'DEFINITION'
print 'ch==',ch
print
print findall_replace(ch, pat, rep)
</code></pre>
<p>显示</p>
<pre><code>ch== sea sun ABC-ABC-DEF bling ranch micABC-DEF fish
group== ABC-DE
text== sea sun ABC-DEFINITIONF bling ranch micDEFINITIONF fish
group== ABC-DE
text== sea sun DEFINITIONFINITIONF bling ranch micDEFINITIONF fish
result is : sea sun DEFINITIONFINITIONF bling ranch micDEFINITIONF fish
</code></pre>