【发布时间】:2012-09-27 04:40:19
【问题描述】:
我有一个日期时间字符串 ISO8601 格式
2012-10-06T04:13:00+00:00
以及以下与该字符串不匹配的正则表达式
#(\d{4})-(\d{2})-(\d{2})T(\d{2})\:(\d{2})\:(\d{2})\+(\d{2})\:(\d{2})#
我不知道为什么它不匹配。
我转义了元字符,对我来说似乎没问题。
编辑:
【问题讨论】:
-
您应该允许±时区,所以
[-+]代替\+。 -
是的乔纳森,好点,但它仍然对我不起作用:(我在我的问题中添加了一个 jsFiddle 示例,让我们自己看看。
-
考虑使用 moment.js 而不是正则表达式。
-
时区的另一个考虑因素:
+00:00的等效项是Z。 -
嗯,我不确定 Z 后缀是否有效。请参阅@Onur 删除的评论。如果我有时间的话,我会在接下来的几天里尝试做一些测试。
标签: javascript regex datetime iso8601