擅长:python、mysql、java
<p>两件事,取决于你到底在追求什么:</p>
<ol>
<li><p>如果要在一行上查找所有匹配项,则需要使用<code>re.findall</code>:</p>
<pre><code>exp = re.compile("foo(?:.*?((bar)+)*)") # See https://regex101.com/r/zzBFFb/1
match = exp.findall(mystring)
</code></pre></li>
<li><p>如果您要在上面的多行上执行所有事件,则需要添加一些标志,以告诉它不要以不同的方式处理换行:</p>
<pre><code>exp = re.compile("foo(?:.*?((bar)+)*)", re.DOTALL | re.MULTILINE)
match = exp.findall(mystring)
</code></pre></li>
</ol>