首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >正则表达式匹配一组字符,除非其中一个字符是python中的最后一个字符

正则表达式匹配一组字符,除非其中一个字符是python中的最后一个字符
EN

Stack Overflow用户
提问于 2018-06-11 08:47:10
回答 4查看 94关注 0票数 0

我正在尝试从文章中提取站点名称,但有时句子末尾的域名会有不需要的点字符,例如“您可以在www.website.gov.us找到更多信息。去年我们有……”

我想要获取域名,并避免包含最后一个点字符。我目前在python中的regex是:

Regex = r'[www.\w\.]+'
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2018-06-15 08:04:09

感谢大家的回答。这个正则表达式解决了我的问题:

Regex = r'https?://(?:ww\w\.)?([a-zA-Z\d-]+(?:\.[a-zA-Z\d-]+)+)'
票数 3
EN

Stack Overflow用户

发布于 2018-06-11 09:19:01

您可以使用以下正则表达式:(?:http://|www.)[^\' ]+

这将使用dot character获取网站地址,然后使用rstrip('.')将其删除。

"www.website.gov.us.".rstrip('.') => "www.website.gov.us"

票数 1
EN

Stack Overflow用户

发布于 2018-06-11 09:47:49

好消息:不需要在python中破解,你可以用正则表达式完成所有的工作!

r'www(\.[a-z]+)+'

首先,匹配“www”,然后查找后跟字母的点的重复模式。如果您的url中可能包含大写字母,请将“a-z”更改为“a-zA-Z”。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50789290

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档