Javascript 以两种格式验证日期
如何验证mm dd yy和mm/dd/yy格式的日期,目前以下代码仅验证mm dd yyJavascript 以两种格式验证日期,javascript,regex,validation,date,Javascript,Regex,Validation,Date,如何验证mm dd yy和mm/dd/yy格式的日期,目前以下代码仅验证mm dd yy function isValidDate(dateString) { if (!/^\d{2}\-\d{2}\-\d{2}$/.test(dateString)) { return false; } var parts = dateString.split("-"); var day = parseInt(parts[1], 10); var mont
function isValidDate(dateString) {
if (!/^\d{2}\-\d{2}\-\d{2}$/.test(dateString)) {
return false;
}
var parts = dateString.split("-");
var day = parseInt(parts[1], 10);
var month = parseInt(parts[0], 10);
if (month == 0 || 12 < month) {
return false;
}
var monthLength = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
return (0 < day && day <= monthLength[month - 1]);
}
将正则表达式更改为
function isValidDate(dateString) {
// use - or / as the seprator
if (!/^\d{2}([-\/])\d{2}\1\d{2}$/.test(dateString)) {
return false;
}
//split using - or /
var parts = dateString.split(/[-\/]/);
var day = parseInt(parts[1], 10);
var month = parseInt(parts[0], 10);
if (month == 0 || 12 < month) {
return false;
}
var monthLength = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
return (0 < day && day <= monthLength[month - 1]);
}
此模式将验证日期格式MM/dd/yy
private static final String DATE_PATTERN =
"((0?[1-9]|1[012])/0?[1-9]|[12][0-9]|3[01])/(\\d\\d))";
java中的一个类似问题。闰年呢?