今天见到了一个很强的正则表达式,几乎把所有的日期特例情况都考虑进去了,比如润年,2月等,分享一下
function
isDate(str){
var reg
=
/^((((1[6-9]|[2-9]/d)/d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]/d|3[01]))|(((1[6-9]|[2-9]/d)/d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]/d|30))|(((1[6-9]|[2-9]/d)/d{2})-0?2-(0?[1-9]|1/d|2[0-8]))|(((1[6-9]|[2-9]/d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$/
if (reg.test(str))
return
true;
return false;
}
js使用范例:
<script language="javascript">
function CheckData(){
with(document.all){
if
(!isDate(txtEndDate.value)){
alert("请输入正确的截止日期!");
txtEndDate.focus();
return
false;
}
}
}
</script>
function
var
if
return
}
js使用范例:
<script
function
}
</script>