<p>假设有两个字符串:</p>
<pre><code>$1 off delicious ham.
$1 off delicious $5 ham.
</code></pre>
<p>在Python中,当字符串中只有一个$时,是否可以有一个匹配的regex?一、 我想在第一个短语上重新匹配,但在第二个短语上不匹配。我试过这样的方法:</p>
<pre><code>re.search(r"\$[0-9]+.*!(\$)","$1 off delicious $5 ham.")
</code></pre>
<p>…说“在$后面跟除另一$之外的任何内容匹配。”在$示例上没有匹配,但在$示例上也没有匹配。</p>
<p>提前谢谢!</p>
<p>检查的简单试验方法:</p>
<pre><code>def test(r):
s = ("$1 off $5 delicious ham","$1 off any delicious ham")
for x in s:
print x
print re.search(r,x,re.I)
print ""
</code></pre>