求验证日期格式的正则表达式,形如 2007-07-17。谢谢

来源:百度知道 编辑:UC知道 时间:2024/05/23 02:08:43
能不能写全一些?我不懂编程。十分感谢!

/^(19|20)\d{2}-(0?\d|1[012])-(0?\d|[12]\d|3[01])$/;
这个是1900-2099,简单验证1-12月,1-31日,对于2月30这样的不管。如果都验证,这个正则表达式会很长,你看懂这个自己就会改了。例如:
<html>
<body>
<script language="javascript">
<!--
function test()
{
var pattern=/^(19|20)\d{2}-(0?\d|1[012])-(0?\d|[12]\d|3[01])$/;
var str=document.getElementById("str").value;
if(pattern.test(str)){alert("True!");}
else{alert("False!");}
}
-->
</script>
<input type="text" id="str">
<input type="button" value="Test" onclick="test()">
</body>
</html>

^((((31\/(0?[13578]|1[02]))|((29|30)\/(0?[1,3-9]|1[0-2])))\/
(1[6-9]|[2-9]\d)?\d{2})|(29\/0?2\/(((1[6-9]|[2-9]\d)?(0[48]|
[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))))|