正则表达式如下
( https?|ftp|file)://[-A-Za-z0-9+&@#/%?=~_|!:,.;]+[-A-Za-z0-9+&@#/%=~_|]
复现代码:
import re
url_pattern = re.compile(r'( https?|ftp|file)://[-A-Za-z0-9+&@#/%?=~_|!:,.;]+[-A-Za-z0-9+&@#/%=~_|]')
print("search", url_pattern.search("http://1.com 和 http://2.com"))
print("findall", url_pattern.findall("http://1.com 和 http://2.com"))
为什么二者表现不同呢?如果我想用 url_pattern.findall() 得到 ["http://1.com","http://2.com"] 这样的结果,该如何修改代码?