擅长:python、mysql、java
<p>您可以在<code>re.sub</code>的<code>lambda</code>替换中使用<code>iter</code>和<code>next</code>:</p>
<pre><code>import re
name = iter(['T','D','FG'])
s = """
II.NIL.10.BHZ.M.2058.190.160877
II.NIL.10.BHA.M.2008.190.168857
II.NIL.10.BHB.M.2078.198.160857
"""
result = re.sub('(?<=BH)\w\.\w', lambda x:f'{next(name)}', s)
</code></pre>
<p>输出:</p>
<pre><code>II.NIL.10.BHT.2058.190.160877
II.NIL.10.BHD.2008.190.168857
II.NIL.10.BHFG.2078.198.160857
</code></pre>