我对正则表达式只有一点经验,但现在我遇到了一些问题。
我必须检索 . 之间的字符串。
这是一个示例:
Categories: <a href="/car/2/page1.html">2</a>, <a href="/car/nissan/">nissan</a>,<a href="/car/all/page1.html">all</a>
这是我的小正则表达式:
re.findall("""<a href=".*">.*</a>""",string)
嗯,它有效,但我只想要 之间的字符串,而不是 href, 那么我该怎么做呢?
谢谢。
最佳答案
使用括号形成捕获组:
'<a href=".*">(.*)</a>'
您可能还想使用 non-greedy量词以避免匹配远远超出您的预期。
'<a href=".*?">(.*?)</a>'
结果:
['2', 'nissan', 'all']
或者更好的是,考虑使用 HTML 解析器,例如 BeautifulSoup .
关于python正则表达式仅检索一组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3756429/