擅长:python、mysql、java
<p>这个任务不需要这么复杂的正则表达式。只需使用两个替换集:</p>
<pre><code>In [10]: {i.replace('[:AMide]', '').replace('[:dkja]', '') for i in set1}
Out[10]: {'*klj?', 'DKJ?', 'JKLJS?', 'TRered?', 'abkjld:Sure:STe?', 'bl:VOLTe?'}
</code></pre>
<p>毕竟,如果您想删除方括号之间的所有内容,我认为您可以简单地使用一个否定字符类,如下所示:</p>
<pre><code>In [11]: import re
In [12]: {re.sub(r'\[[^]]+\]', r'', i) for i in set1}
Out[12]: {'*klj?', 'DKJ?', 'JKLJS?', 'TRered?', 'abkjld:Sure:STe?', 'bl:VOLTe?'}
</code></pre>