我尝试使用以下获得Python中的正则表达式的所有实例
import re
s = '<div><a href="page1.html" title="page1">Go to 1</a>, <a href="page2.html" title="page2">Go to page 2</a><a href="page3.html" title="page3">Go to page 3</a>, <a href="page4.html" title="page4">Go to page 4</a></div>'
match = re.findall(r'<a.*>(.*)</a>', s)
for string in match:
print(string)
把所有的链接的innerHTML的,但我只得到了最后一次出现,“转到第4页” 我认为它看到一个大字符串和几个匹配的正则表达式,它们被视为重叠并被忽略。所以,我如何才能符合
集合[“转到第1页”,“转到第2页”,“转到第3页”,“转到第4页”]
谢谢!我真的不太明白?在正则表达式中,这是一个很好的学习经验。这里是我的工作 match = re.findall(r'(。*?)',s) –
SteveC
@ user1450120我没有看到其他。* :)无论如何 - 期待这个打破以后或可能会返回错误的结果......请看使用'beautifulsoup'解析HTML - 这很容易学习和灵活 –
什么样的输入可能会导致此问题被破坏? – SteveC