ip地址正则表达式
时间: 2023-06-30 15:16:11 浏览: 97
Python正则表达式匹配ip地址实例
5星 · 资源好评率100%
以下是匹配 IPv4 地址的正则表达式:
```
^(25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)(\.(25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)){3}$
```
解释一下上面的正则表达式:
- `^` 表示字符串的开头
- `(25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)` 表示匹配 0-255 之间的数字,可以有前导零
- `(\.(25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)){3}` 表示匹配三个点分隔的数字,每个数字由上述表达式表示
- `$` 表示字符串的结尾
如果你需要匹配 IPv6 地址,可以使用以下正则表达式:
```
^([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$
```
解释一下上面的正则表达式:
- `^` 表示字符串的开头
- `([0-9a-fA-F]{1,4}:){7}` 表示匹配 8 个由冒号分隔的 16 进制数,每个数最多有 4 位
- `[0-9a-fA-F]{1,4}` 表示匹配一个 16 进制数,最多有 4 位
- `$` 表示字符串的结尾
需要注意的是,IPv6 地址可能还包含压缩形式,如 `::1` 表示的是 `0000:0000:0000:0000:0000:0000:0000:0001`,在匹配时需要特别处理。
阅读全文