擅长:python、mysql、java
<p>在字符串前面加<code>r</code>并不能使它成为正则表达式,而是使它成为<a href="https://stackoverflow.com/questions/2081640/what-exactly-do-u-and-r-string-flags-do-in-python-and-what-are-raw-string-l">raw string literal</a>。你知道吗</p>
<p>您需要使用<code>re.compile()</code>将它编译成正则表达式。你知道吗</p>
<pre><code>import re
...
for component in pl_component_dict[productline]:
if re.compile(component).match(component_branch):
print "PASS"
break
else: # note that this becomes a for-else, not an if-else clause
print "ERROR:Gerrit on incorrect component"
</code></pre>
<p>这个for else循环处理在<code>pl_component_dict[productline]</code>中有一个列表的事件,就像在本例中一样。你知道吗</p>