有人可以编写正则表达式来测试这种日期格式2012/11/14 14:28:12
吗?
我已经有了日期部分的正则表达式:
/^\d{4}\/\d{2}\/\d{2}$/
如何添加此功能来测试是否存在时间?
答案 0 :(得分:5)
我会使用Date
构造函数来测试该格式的日期:
var isValid = !!new Date('2012/11/14 14:28:12').getTime();
适用于我所有的测试浏览器(safari / chrome / firefox / ie7 +)。 Date构造函数采用了许多日期变体,但您可以将其与正则表达式结合使用以强制使用某种格式。
答案 1 :(得分:4)
我最近写的这个小提琴http://jsfiddle.net/jstoolsmith/Db3JM/是一段更复杂的代码,相关的正则表达式是:
/(?:(\d{4})([\-\/.])([0-3]?\d)\2([0-3]?\d)|([0-3]?\d)([\-\/.])([0-3]?\d)\6(\d{4}))(?:\s+([012]?\d)([:hap])([0-5]\d))?/i