判断是否符合“1-10,15,20 ”这样的格式,意思就是,从多少到多少连续,或单个的

解决方案 »

  1.   

    等一下過客就來 的說  hi.csdn.net/lxcnn
      

  2.   

    ^\d+(-\d+)?(,\d+(-\d+)?)+$
    正则里判断不了数值大小
      

  3.   

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

  4.   

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

  5.   

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

  6.   

    /^\s*(\b(40\d[0-5]|[1-3]\d{3}|[1-9]\d{0,2}|0)[-,]?)*\b\s*$/说实话,用split或match把所有数字直接取出来,再做循环数字比较,会好看和正规得多。