擅长:python、mysql、java
<p>您可以使用<code>regex.sub</code>:</p>
<pre><code>st_arr = ['2001:cdba:0000:0000:0000:0000:3257:9652', '2001:cdba:0:0:0:0:3257:9652', '2001:cdba::3257:9652']
new_string_arr = [re.sub(r'[:]+', ':', re.sub(':[0]+', ':', st))) for st in st_arr]
new_string_arr
Out[63]: ['2001:cdba:3257:9652', '2001:cdba:3257:9652', '2001:cdba:3257:9652']
new_string_arr[0] == new_string_arr[1] == new_string_arr[2]
Out[64]: True
</code></pre>
<p>首先regex将模式<code>:[0]+</code>替换为<code>:</code>,之后由于可能有多个冒号,我将模式<code>[:]+</code>替换为<code>:</code>。在</p>