IP地址正则匹配

2/5/2017 正则IP

一般情况 IPv4 分4段 0.0.0.0 - 255.255.255.255

# 简单正则

  [0-9]+(?:\.[0-9]+){0,3}
  或者    ^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$
1
2

匹配区间太大,例如(22333.22.11.234234) 这种也可以批配。

# 精准匹配

^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$
1

# 正则匹配 0-255 分4段

0-9        
10-99
100-199
200-249
250-255
1
2
3
4
5

# 对应正则匹配

0-9          [0-9]    
10-99        [1-9][0-9]
100-199      1[0-9][0-9]  
200-249      2[0-4][0-9]
250-255      25[0-5]
1
2
3
4
5

# 合并正则

例如:0-9,10-99,100-199,200-249,250-255 合并正则如下 [01]?[0-9][0-9]?

# 组合

^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$

?: 表示非捕获文本,表达式是基于BRE的