擅长:python、mysql、java
<p>虽然regex是一个功能强大得难以置信的工具,但使用“聪明的方法”并不一定是您不熟悉其原理的最佳方法</p>
<p>您的问题可以在不使用正则表达式的情况下解决,方法是使用<a href="https://docs.python.org/3.8/library/stdtypes.html?highlight=split#str.split" rel="nofollow noreferrer">^{<cd2>}</a>方法对<code>:</code>字符进行拆分,然后使用<code>[-1]</code>索引值返回最后一部分,以表示拆分后的最后(或唯一)字符串。即使没有<code>:</code>,这也会起作用</p>
<pre><code>list_with_prefixes = ["pp:actual_string", "perfect_string", "frog:actual_string"]
cleaned_list = [x.split(':')[-1] for x in list_with_prefixes]
print(cleaned_list)
</code></pre>
<p>这是一个列表理解,它依次接受每个字符串(<code>x</code>),拆分<code>:</code>字符上的字符串,返回一个包含前缀(如果存在)和后缀的列表,并构建一个新列表,其中只包含后缀(即拆分后的列表中的项[-1])。在本例中,它返回:</p>
<pre><code>['actual_string', 'perfect_string', 'actual_string']
</code></pre>