擅长:python、mysql、java
<p><code>re.sub</code>方法不替换字符串。不能,因为Python中的字符串是不可变的。对字符串执行替换时,它将返回一个包含所请求更改的新字符串(如果不匹配,则返回原始字符串)。您当前忽略了返回值,因此您的代码没有任何效果。在</p>
<p>但我认为这个问题根本不需要正则表达式。如果要将任何提到单词<code>super</code>的字符串替换为字符串<code>"superintendent"</code>,可以使用一个简单的子字符串测试:</p>
<pre><code>for i, item in enumerate(list_of_strings):
if "super" in item:
list_of_strings[i] = "superintendent"
</code></pre>
<p>这当然比使用当前的正则表达式更容易出现误报。如果需要,您仍然可以将上面代码的结构与regex搜索一起使用(只需将<code>if "super" in item:</code>行更改为<code>if re.search(pattern, item):</code>,然后将<code>pattern</code>设置为与所需字符串匹配的regex)。在</p>