regex - 使用 findall regex python 3 问题查找字符串
问题描述
以下是网址列表。但是,我只想打印每个地址的主机名。
http://www.askoxford.com
http://www.hydrogencarsnow.com
http://www.bnsf.com
http://web.archive.org
预期结果:
askoxford.com
hydrogencarsnow.com
bnsf.com
web.archive.org
我的代码:
import re
import codecs
raw = codecs.open("D:\Python\gg.txt",'r',encoding='utf-8')
string = raw.read()
link = re.findall(r'www\.(\w+\.com|\w+\.org)',string)
print(link)
电流输出:
['askoxford.com', 'askoxford.com', 'hydrogencarsnow.com', 'bnsf.com']
截至目前的输出,它不包括 hostname.org。我不确定字符串前面的 reg 的 make OR 条件的方式。
我的尝试:
link = re.findall(r'(http://www\.|http://)(\w+\.com|\w+\.org)',string)
,但它不起作用,因为它会收集带有主机名的 http...。
解决方案
推荐阅读
- jmeter - JMeter从多个csv文件中获取http采样器的数据
- symfony - Symfony services.yaml 处理异常
- python-3.x - 当我们使用 gc.disable() 在 python 中禁用垃圾收集器时,为什么它仍然会破坏对象?
- asp.net-core - 如何在 .NET Core 解决方案中访问另一个项目的根文件夹?
- ios - 在约束中添加计算会降低系统性能吗?
- python - PIL(枕头)使用“libpng 警告:iCCP:已知不正确的 sRGB 配置文件”保存 png
- ios - 如何让您的 API 仅在显示容器视图时运行?
- java - 为什么 visualvm 中的“总时间”列与运行时持续时间不同?
- uninstallation - 如何卸载通过 distils 安装的 pycocotools
- php - 如何为 whmcs 订单添加操作挂钩