求一个正则表达式:限制文本框只能输入整数或小数;输入的是整数的话不能超过10位,输入的是小数的话整数部分同样不能超过10位,小数部分不能超过4位

解决方案 »

  1.   

    re = /^(\d{1,10}|\d{1,10}\.\d{1,4})$/
      

  2.   


    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title></title>
    <script language="JavaScript" type="text/javascript">
     
       window.onload=function(){
         
       }
     function test(val){
            var v1=val.split(".")[0];
            var v2=val.split(".")[1];
            if(v1.length>10) alert("整数不能超过10位");
            if(v2.length>4) alert("小数不能超过4位")
        }
    </script>
    </head>
    <body>
    <input type=text id=test onchange=test(this.value)>
    </body>
    </html>
      

  3.   

    刚才那个漏掉了<script type="text/javascript">
    <!--
        var reg = /(^[1-9]\d{0,9}(\.\d{1,4})?$)|(^0?\.\d{1,4}$)/;
    alert(reg.test("00.2"))
    alert(reg.test("0.2"))
    alert(reg.test("2.2"))
    alert(reg.test(".2"))
    alert(reg.test("12.2"))
    alert(reg.test("2.24237"))
    alert(reg.test("2."))
    alert(reg.test("34343434"))
    alert(reg.test("0000000"))
    //-->
    </script>