服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - 正则表达式 - js:日期正则表达式及检测

js:日期正则表达式及检测

2020-07-17 14:09正则之家 正则表达式

本文主要为大家讲解js中日期正则表达式及检测方法,有需要的朋友可以参考下

这是yyyy-mm-dd hh:mm:ss 的 
/^(\d{4})\-(\d{2})\-(\d{2}) (\d{2}):(\d{2}):(\d{2})$/ ; 
这是 yyyy-mm-ddde 的
/^(\d{4})\-(\d{2})\-(\d{2})$/ 

function validateCNDate( strValue ) {
var objRegExp = /^\d{4}(\-|\/|\.)\d{1,2}\1\d{1,2}$/


if(!objRegExp.test(strValue))
return false; 
else{
var arrayDate = strValue.split(RegExp.$1); 
var intDay = parseInt(arrayDate[2],10);
var intYear = parseInt(arrayDate[0],10);
var intMonth = parseInt(arrayDate[1],10);

if(intMonth > 12 || intMonth < 1) {
return false;
}

var arrayLookup = { '1' : 31,'3' : 31, '4' : 30,'5' : 31,'6' : 30,'7' : 31,
'8' : 31,'9' : 30,'10' : 31,'11' : 30,'12' : 31}

if(arrayLookup[parseInt(arrayDate[1])] != null) {
if(intDay <= arrayLookup[parseInt(arrayDate[1])] && intDay != 0)
return true; 
}

if (intMonth-2 ==0) {
var booLeapYear = (intYear % 4 == 0 && (intYear % 100 != 0 || intYear % 400 == 0));
if( ((booLeapYear && intDay <= 29) || (!booLeapYear && intDay <=28)) && intDay !=0)
return true;
}
}
return false; 
}

延伸 · 阅读

精彩推荐