擅长:python、mysql、java
<p>您可以使用<code>continue</code>:</p>
<pre><code>for line in file:
m = re.match(re1, line)
if m:
do stuff
continue
m = re.match(re2, line)
if m:
do stuff
continue
raise BadLine
</code></pre>
<p>另一个不太明显的选择是使用如下函数:</p>
<pre><code>def match_any(subject, *regexes):
for n, regex in enumerate(regexes):
m = re.match(regex, subject)
if m:
return n, m
return -1, None
</code></pre>
<p>然后:</p>
<pre><code>for line in file:
n, m = match_any(line, re1, re2)
if n == 0:
....
elif n == 1:
....
else:
raise BadLine
</code></pre>