擅长:python、mysql、java
<p>您可以使用两个<a href="http://www.regular-expressions.info/lookaround.html" rel="nofollow">lookaheads</a>:</p>
<pre><code>^(?=.*id=123456)(?=.*discography=True)
</code></pre>
<p>从字符串(<code>^</code>)的开头,我们首先在任何地方寻找<code>id=123456</code>(由于<code>.*</code>)。但是lookahead实际上并不消耗任何东西,因此一旦找到模式,引擎就会跳回到它开始的地方(字符串的开头),并从第二个模式开始。在</p>
<p>正如eyquem所指出的,如果字符串中有换行符,<code>.*</code>不能越过它们,除非使用选项<code>re.S</code>(或{<cd6>}-这只是一个别名)。在</p>
<p>但是,这看起来像是在尝试解析URL的查询字符串。也许你应该看看<a href="http://docs.python.org/library/urlparse.html" rel="nofollow">^{<cd7>}</a>。在</p>