python - 从具有特定 TLD 正则表达式的行中提取 URL
问题描述
大家好,我正在尝试从具有“.eu”特定结尾的文件中提取 URL,例如 .com。
我有这段代码来获取 URL 列表,但没有特定的结尾。任何人都可以改进它以最终获得特定的 TLD 吗?
urls = re.findall('https?://(?:[-\w.]|(?:%[\da-fA-F]{2}))+', line).
行和预期结果的示例。
akijsdijas adsfaasd asfda https://www.google.eu/asd34a/as3df asdfs dsf76
a56 64ijas adsfaasd asfda https://www.facebook.eu/asd34a/as3df asdfs345 dsf76
fghddijas adsfaasd asfda https://www.facebook.com/asd34a/as3df asdfs dsf76
预期成绩:
解决方案
您可以使用
re.findall(r'https?://\S*?\.eu\b', line)
请参阅正则表达式演示。
正则表达式匹配:
https?://
-http://
或https://
\S*?
- 任何 0+ 个非空白字符,尽可能少\.eu\b
- a.eu
后跟非单词字符或字符串结尾。
推荐阅读
- python - 屏蔽一个三维数组以执行分割
- javascript - 将 UTC 时间戳转换为可读格式
- c++ - 打开文件和系统功能总是失败?
- design-patterns - 事件同步
- powerbi - PowerBi 似乎失去了连接状态,具体取决于我选择的字段
- amazon-web-services - cloudwatch 日志订阅过滤器到 terraform 上的 kinesis
- c# - 如何从 .NET 3.5 C# 中的 Json 获取值?
- c# - 我正在关注教程,但遇到覆盖错误。无法弄清楚问题所在。CS0115
- python - 在数据框中查找具有 nan 值的列的重复子集
- javascript - JS 将 div 内容填充到 PHP 数组中,没有任何 html 标签