繁体   English   中英

从具有特定 TLD 正则表达式的行中提取 URL

[英]Extract URL from lines with specific TLD ReGex

大家好,我正在尝试从具有“.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

预期成绩:

https://www.google.eu

https://www.facebook.eu

您可以使用

re.findall(r'https?://\S*?\.eu\b', line)

请参阅正则表达式演示

正则表达式匹配:

  • https?:// - http://https://
  • \S*? - 任何 0+ 个非空白字符,尽可能少
  • \.eu\b - .eu后跟非单词字符或字符串结尾。

尝试这个

urls = re.findall(r'https?://\S*\.eu\b')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM