首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Python中的正则表达式来匹配时间和天数?

如何使用Python中的正则表达式来匹配时间和天数?
EN

Stack Overflow用户
提问于 2018-11-27 18:52:46
回答 1查看 153关注 0票数 0

这是我第一次在这里提问,我是Python的初学者。我会把时间(小时和分钟)与文本中的天数相匹配。我写这句话是为了:

代码语言:javascript
复制
(([0-9]+.?[0-9]+(a|p)m)[(Mon|Tues|Wednes|Thurs|Fri|Satur|Sun)day]?)

然而,它只匹配没有天数的时间。你能帮我一下吗?这句话有什么问题吗?非常感谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-27 19:19:41

问题在[(Mon|Tues|Wednes|Thurs|Fri|Satur|Sun)day]?中,因为正如www.regular-expressions.info中所述

只能使用括号进行分组。方括号定义字符类,大括号由具有特定限制的量词使用。

因此,您需要更改括号的方括号:

代码语言:javascript
复制
((Mon|Tues|Wednes|Thurs|Fri|Satur|Sun)day)?

最后的正则表达式应该如下所示:

代码语言:javascript
复制
(([0-9]+.?[0-9]+(a|p)m)((Mon|Tues|Wednes|Thurs|Fri|Satur|Sun)day)?)

我做了一些改变来改进它:

代码语言:javascript
复制
((\d{1,2}:?\d{1,2}(a|p)m)((Mon|Tues|Wednes|Thurs|Fri|Satur|Sun)day)?)

其中:

  • \d[0-9]一样。
  • {1,2}意味着前面的令牌应该出现1或2次。

作为一个提示,您可以使用https://regex101.com构建正则表达式并对它们进行适当的测试。

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

https://stackoverflow.com/questions/53506337

复制
相关文章

相似问题

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