我試圖使用正則表達式從雜亂的文本數據中提取URL。我曾經匹配[\w.]+[a-zA-Z]{2,4}
,其行爲如我所料:找到連續的字母數字和點,然後以2〜4個字母(如com/net/gov)結尾。這不完美,但足夠我的使用。 現在我想改進一下語法:我想查找所有字母數字後跟一個點,重複該模式多次,然後以2〜4個字母結束。這將排除諸如"abc....com"
之類的內容。不過,這一次的結果真的讓我感到困惑:Python2重新匹配重複模式的行爲不如預期
test = 'www.1f23123.asda.com'
re.findall(r'(\w+\.){1,}[a-zA-Z]{2,4}', test)
,結果是['asda.']
有人能向我解釋什麼不順心嗎?
謝謝!問題解決了。 – yuchenhu