擅长:python、mysql、java
<p>我看到的唯一问题是你用错误的捕获组替换。</p>
<pre><code>modified=re.sub(r'^(?i)((?:(?!http://)(?!testing[0-9])(?!example[0-9]).)*?)(?-i)(CODE[0-9]{3})(?!</a>)',r'<a href="http://productcode/\g<1>">\g<1></a>',input)
^ ^ ^
first capturing group second one using the first group
</code></pre>
<p>在这里,我让第一个也是一个非捕获组</p>
<pre><code>^(?i)(?:(?:(?!http://)(?!testing[0-9])(?!example[0-9]).)*?)(?-i)(CODE[0-9]{3})(?!</a>)
</code></pre>
<p>看<a href="http://regexr.com?2u9ca" rel="nofollow">here on Regexr</a></p>