擅长:python、mysql、java
<p>和其他答案一样,我会使用积极的前瞻性断言。在</p>
<p>然后通过一些评论来解决这个问题(比如“胡子”之类的词呢?),我会添加<code>(\b|$)</code>。这将匹配单词边界或字符串的结尾,因此只匹配单词<code>bear</code>,不再匹配。在</p>
<p>所以你得到了以下结果:</p>
<pre><code>import re
def bear_replace(string):
return re.sub(r"\w+ (?=bear(\b|$))", "the ", string)
</code></pre>
<p>和测试用例(使用pytest):</p>
^{pr2}$