我嘗試使用以下獲得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