擅长:python、mysql、java
<p>这是一个有效的regexp:</p>
<pre><code>>>> r = re.compile(r'\bclass="fl".*?\bdata-href="http://www\.twitter\.com/(\w+)"', re.S)
>>> r.search(s).group(1)
'newyorklife'
</code></pre>
<p>这里的关键概念是非贪婪匹配。因为页面上可能有多个<code>data-href</code>,所以您必须注意在匹配<code>class="fl"</code>之后找到它的第一个出现。因此这里使用<code>.*?</code>表达式来匹配<em>尽可能少的字符,然后再尝试匹配下一个<code>data-href</code>。你知道吗</p>