📅  最后修改于: 2023-12-03 15:25:57.890000             🧑  作者: Mango
在网页爬取、数据处理等场景中,我们经常需要从字符串中提取出存在的URL。本文将介绍如何用Python编写代码实现这一功能。
使用正则表达式可以很方便地匹配出字符串中的URL。在Python中,我们需要先导入re模块。
import re
为了匹配出字符串中的URL,我们可以使用以下正则表达式:
regex = r"(?:(?:http|https):\/\/)?[\w/\-?=%.]+\.[\w/\-?=%.]+"
该正则表达式可以匹配出 http:// 或 https:// 开头的URL,其中 [\w/-?=%.]+ 匹配出URL域名和路径,最后一个 [\w/-?=%.]+ 则匹配出URL的后缀名。
有了正则表达式,我们就可以使用 Python 的 re.findall 函数来查找所有匹配的URL。
url_list = re.findall(regex, input_str)
其中,input_str 为输入的字符串,url_list 即存储了所有匹配出来的URL的列表。
import re
input_str = "Here is a URL: https://www.google.com"
regex = r"(?:(?:http|https):\/\/)?[\w/\-?=%.]+\.[\w/\-?=%.]+"
url_list = re.findall(regex, input_str)
print(url_list)
上述代码的输出结果为:
['https://www.google.com']
通过上述完整代码,我们可以轻松地实现从字符串中提取出存在的URL的功能。这不仅能够提高我们的工作效率,也拓宽了我们的技术应用场景。