首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RFC 2822日期正则表达式

RFC 2822日期正则表达式
EN

Stack Overflow用户
提问于 2012-02-20 02:40:31
回答 1查看 1.5K关注 0票数 2

与RFC2822日期匹配的最佳正则表达式是什么?

基本上我想匹配在我收到的一些电子邮件中出现的Date: Sun, 19 Feb 2012 16:25:02 +0000,但理想情况下是语言独立的。

我确实在网上找到了下面的正则表达式,但不确定如何使月语言独立(但仍与其余语言匹配)-我认为规范中的月应该是3个字符,但不完全确定……

代码语言:javascript
复制
/^(?:(Sun|Mon|Tue|Wed|Thu|Fri|Sat),\s+)?(0[1-9]|[1-2]?[0-9]|3[01])\s+(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s+(19[0-9]{2}|[2-9][0-9]{3})\s+(2[0-3]|[0-1][0-9]):([0-5][0-9])(?::(60|[0-5][0-9]))?\s+([-\+][0-9]{2}[0-5][0-9]|(?:UT|GMT|(?:E|C|M|P)(?:ST|DT)|[A-IK-Z]))(\s+|\(([^\(\)]+|\\\(|\\\))*\))*$/
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-02-20 03:41:43

正如@tripleee指出的那样,RFC2822日期将始终是英语。但是,如果您解析的日期源不严格遵循RFC2822,并且可能使用不同的语言,则必须确定可能使用的语言集,并创建一个正则表达式,该正则表达式将匹配这些语言中的任何月份/星期名称。之后,您可以使用散列将捕获的月份/星期名称转换为您希望使用的内部表示。

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

https://stackoverflow.com/questions/9352003

复制
相关文章

相似问题

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