ip_addresses = "122.25.26.26,135.225.256.254,127.0.0.1,256.245.255.255,1234.255.214.123,0.255.255.255",提取出正确的ip地址
时间: 2023-11-10 08:06:18 浏览: 147
正确的 IP 地址应该是每个数字都在 0-255 的范围内。下面是提取出正确的 IP 地址的代码示例:
```python
import re
ip_addresses = "122.25.26.26,135.225.256.254,127.0.0.1,256.245.255.255,1234.255.214.123,0.255.255.255"
pattern = r"\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b"
result = re.findall(pattern, ip_addresses)
correct_ips = [ip for ip in ['.'.join(r) for r in result] if ip_addresses.count(ip) == 1]
print(correct_ips)
```
输出结果:
```
['122.25.26.26', '127.0.0.1', '0.255.255.255']
```
可以看到只有 3 个 IP 地址是正确的。其中,正则表达式 `r"\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b"` 可以匹配符合要求的 IP 地址。
阅读全文