正则如何验证 像“192.168.0.2,192.168.0.3,192.168.0.4”这样的ip组我试过 验证单个ip 可以 但是如何验证 有一组或者多组ip这样的ip?
比如如何只用一个正则 验证 是否是ip组   验证“192.168.0.2,192.168.0.3,192.168.0.4,……”这样几组是否为ip组不知道谁遇见过验证这种ip组的求帮助

解决方案 »

  1.   


    var str = '92.168.0.2,192.168.0.3,192.168.0.4';
    var pattern = /^((\d{1,3}\.)){3}\d{1,3}(,((\d{1,3}\.)){3}\d{1,3})*$/g;  //规则没有太细
    var re = pattern.test(str);
    alert(re);
    这里应可以使用分组,但是对分组还不太熟练。
    (())
    不知道外面的括号算是\1,还是\2
      

  2.   

    <script>
    var ips = "192.168.0.2,192.168.0.3,192.168.0.4";
    var rul = /^\d{1,3}(\.\d{1,3}){3,3}(,\d{1,3}(\.\d{1,3}){3,3})*$/;
    if(!rul.test(ips)){
    alert("不是完全的ip组结构");
    }
    </script>
      

  3.   

    var str = '92.168.0.2, 192.168.0.3, 192.168.0.4', pattern = /^(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\,?\s*)*$/;
    alert(pattern.test(str));
      

  4.   

    var ip="192.123.43.23,192.123.32.12,123,123,32,43,";
    var regexq=/^([0-2][0-9][0-9]\.[0-2][0-9][0-9]\.[0-2]*[0-9]*[0-9]\.([0-2]*[0-9]*[0-9])).+[^\,]$/g; alert(regexq.test(ip));