擅长:python、mysql、java
<p>使用<a href="https://docs.python.org/3/library/re.html#regular-expression-syntax" rel="nofollow noreferrer">star</a>运算符:</p>
<pre><code>txt = 'abbabaa'
re.findall(r'(ab)*', txt)
</code></pre>
<p>输出:</p>
<pre><code>['ab', '', 'ab', '', '', '']
</code></pre>
<h2>小心</h2>
<p>匹配0或更多将匹配空字符串,我不确定这是你需要的。你知道吗</p>
<h2>建议</h2>
<p>如果使用的是<code>re.findall</code>,则不需要在一个结果中匹配所有<code>li</code>元素,因为所有结果匹配都将从<code>findall</code>返回。你知道吗</p>
<p>首先使用<code>re.search()</code>捕获<code><ul>...</ul></code>块。
然后在生成的ul文本上使用<code>re.findall()</code>分隔每个<code><li></li></code>元素</p>
<h2>建议二</h2>
<p>使用<a href="http://lxml.de/" rel="nofollow noreferrer">lxml</a>或<a href="https://www.crummy.com/software/BeautifulSoup/bs4/doc/" rel="nofollow noreferrer">bs4</a>解析html对象,这比编写自己的正则表达式来查找html元素要简单。你知道吗</p>