要验证一个正则表达式,格式为 小时:分钟:秒
其中小时可以是24小时以内也可以超过24小时比如 02:25:26 或者152:12:13
分钟和秒必须小于等于60多谢各位大侠帮忙!!

解决方案 »

  1.   

    var reg=/^(\d+):([0-5]?[0-9]):([0-5]?[0-9])$/alert(reg.test("125:6:59"))  //true
      

  2.   


    <body>
    <input id="v" type="text" >
    <input id="c" type="button" value="检测">
    <script type="text/javascript">
    <!--//
    var $=function(o){return document.getElementById(o);};
    $("c").onclick=function(){
    var reg=/\d{1,3}\:[0-6]?\d\:[0-6]?\d/gmi,
    v=$("v").value;
    if(reg.test(v)){
    alert("格式正确!")
    }
    else{
    alert("格式有误,请输入正确的格式: xxx:xx:xx");
    }
    };
    //-->
    </script>
      

  3.   

    <html>
    <script type="text/javascript">
    function check(date)
    {
    var preg = /^([1-9]\d*|0)\d\:[0-6]\d\:[0-6]\d$/;
    if(preg.test(date))
    {
    alert("correct!");
    }else
    {
    alert("error!");
    }
    }
    </script>
    date:<input type="text" onblur="check(this.value);">
    </html>
      

  4.   

    刚才有点问题!<html>
    <script type="text/javascript">
    function check(date)
    {
    var preg = /^([1-9]\d*|0)\d\:([0-5]\d|60)\:([0-5]\d|60)$/;
    if(preg.test(date))
    {
    alert("correct!");
    }else
    {
    alert("error!");
    }
    }
    </script>
    date:<input type="text" onblur="check(this.value);">
    </html>
      

  5.   

    不应该等于60吧?等于60的时候应该就进位了
    而且小时>0的时候首位数字不应该为0
    所以把楼上的改为var preg = /^([1-9]\d*|0):[0-5][0-9]:[0-5][0-9]$/;
      

  6.   

    /^(0\d{1}|1\d{1}|2[0-3]):[0-5]\d{1}:([0-5]\d{1})$/;
      

  7.   

    ^([0-1]\d|2[0-4]):([0-5]\d):([0-5]\d)$答案供大家参考,谢谢各位啦!