JavaScript正则表达式匹配日期的正则

JavaScript正则表达式匹配日期的正则;

可以匹配不同的年月日;

var str1="2017-06-25";
var str2="2018/04/05";
var reg=/(\d\d\d\d)[-.\/](0?[1-9]|[12][0-9]|3[01])[-.\/](1[0-9]|2[0-9])|0?[1-9]/;
console.log(str1.match(reg));// ["2017-06-15", "2017", "06", "15", index: 0, input: "2017-06-15"]
console.log(str2.match(reg));// ["2018/04/05", "2018", "04", "05", index: 0, input: "2018/04/05"]

$1 匹配 0000,0001….9999 也就是匹配 年份

$2 匹配 01,02…09,10,11….29,30,31 也就是匹配 日期

$3 匹配 10,11,12,01,02,03,04,05,06,07,08,09 也是匹配 月份

最简单的正则 如 :

/d{4}-/d{2}-/d{2};

js验证时间正则表达式,推荐使用下面这个正则表达式;

验证时间格式为:’2017-01-31 09:00:22′

var reDateTime = /^(?:19|20)[0-9][0-9]-(?:(?:0[1-9])|(?:1[0-2]))-(?:(?:[0-2][1-9])|(?:[1-3][0-1])) (?:(?:[0-2][0-3])|(?:[0-1][0-9])):[0-5][0-9]:[0-5][0-9]$/;
var isDateTime = reDateTime.test('2017-01-31 09:00:22');
console.log(isDateTime);

更多参考

//日期的正则表达式
var reg = /^[1-9]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])$/;
var regExp = new RegExp(reg);
if(!regExp.test(value)){
alert("日期格式不正确,正确格式为:2014-01-01");
return;
}
//时间的正则表达式
var reg = /^(20|21|22|23|[0-1]\d):[0-5]\d:[0-5]\d$/;
var regExp = new RegExp(reg);
if(!regExp.test(value)){
alert("时间格式不正确,正确格式为:12:00:00");
return;
}
//日期+时间的正则表达式
var reg = /^[1-9]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])\s+(20|21|22|23|[0-1]\d):[0-5]\d:[0-5]\d$/;
var regExp = new RegExp(reg);
if(!regExp.test(value)){
alert("时间格式不正确,正确格式为: 2014-01-01 12:00:00 ");
return;
}

~~

未经允许不得转载:WEB前端开发 » JavaScript正则表达式匹配日期的正则

赞 (0)