我閱讀了關於從字符串中提取url的主題。 https://stackoverflow.com/a/840014/326905 真的很好,我得到了來自含有http://www.blabla.com一個XML文檔的所有URL與從XML中提取Python中的URL
>>> s = '<link href="http://www.blabla.com/blah" />
<link href="http://www.blabla.com" />'
>>> re.findall(r'(https?://\S+)', s)
['http://www.blabla.com/blah"', 'http://www.blabla.com"']
但我無法弄清楚,如何自定義正則表達式的URL的末尾省略雙qoute。
首先,我認爲這就是線索
re.findall(r'(https?://\S+\")', s)
或本
re.findall(r'(https?://\S+\Z")', s)
,但事實並非如此。
有人可以幫助我,告訴我如何在最後省略雙引號?
Btw。 https的「s」後面的問號意味着「s」可能發生或不能發生。我對嗎?
永遠永遠永遠永遠解析與正則表達式http://www.codinghorror.com/blog/2009/11/parsing-html-the-cthulhu-way.html HTML – That1Guy 2013-03-21 14:40:49
你也應該閱讀線程[ RegEx匹配除XHTML自包含標籤之外的開放標籤](http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags) – Abhijit 2013-03-21 14:41:42
如果您使用HTML解析器BeautifulSoup,這個問題比使用正則表達式更容易。 – 2013-03-21 14:41:47