IP:255.255.162.92
IP段:255.255.162.04/92
IP段最后一位可以用“/”来表示一个IP段,请问要验证一个字符串是否符合IP或者IP段的规则,如何写?

解决方案 »

  1.   

    (\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\b[//\d]*
    匹配记录1(行1:列1,长度:10): 
    10.10.1.12
    ----------------------------------------------------------------------
      匹配组1(行1:列1,长度:2): 10
      匹配组2(行1:列4,长度:2): 10
      匹配组3(行1:列7,长度:1): 1
      匹配组4(行1:列9,长度:2): 12======================================================================
    匹配记录2(行2:列1,长度:12): 
    192.168.0.11
    ----------------------------------------------------------------------
      匹配组1(行2:列1,长度:3): 192
      匹配组2(行2:列5,长度:3): 168
      匹配组3(行2:列9,长度:1): 0
      匹配组4(行2:列11,长度:2): 11======================================================================
    匹配记录3(行3:列1,长度:16): 
    192.123.111.1/12
    ----------------------------------------------------------------------
      匹配组1(行3:列1,长度:3): 192
      匹配组2(行3:列5,长度:3): 123
      匹配组3(行3:列9,长度:3): 111
      匹配组4(行3:列13,长度:1): 1======================================================================
      

  2.   

    ^(\d{1,3}\.){3}\d{1,3}(\/\d{1,3})?$
    这样试试