python中正则表达式ip匹配
时间: 2023-10-08 19:13:02 浏览: 56
可以使用re模块来实现正则表达式ip匹配。以下是一个示例代码:
```python
import re
# 定义一个IP地址的正则表达式
ip_pattern = r'^(\d{1,3}\.){3}\d{1,3}$'
# 测试用例
ip_list = ['192.168.1.1', '10.0.0.1', '172.16.0.1', '256.256.256.256', '192.168.1.']
# 进行ip匹配
for ip in ip_list:
if re.match(ip_pattern, ip):
print(f'{ip}是合法的IP地址')
else:
print(f'{ip}不是合法的IP地址')
```
输出结果如下:
```
192.168.1.1是合法的IP地址
10.0.0.1是合法的IP地址
172.16.0.1是合法的IP地址
256.256.256.256不是合法的IP地址
192.168.1.不是合法的IP地址
```
上面的正则表达式ip_pattern中,`^`表示开头,`$`表示结尾,`\d{1,3}`表示匹配1到3位数字,`\.`表示匹配点号,`{3}`表示匹配前面的表达式3次。因此,这个正则表达式可以匹配符合IP地址格式的字符串。
相关问题
正则表达式匹配IP地址
以下是Python中正则表达式匹配IP地址的例子:
```python
import re
# 定义IP地址的正则表达式
ip_pattern = r'^((2((5[0-5])|([0-4]\d)))|([0-1]?\d{1,2}))(\.((2((5[-5])|([0-4]\d)))|([0-1]?\d{1,2}))){3}$'
# 测试用例
ip_list = ['192.168.1.1', '10.0.0.1', '172.16.0.1', '256.256.256.256', '1.1.1.01']
# 匹配IP地址
for ip in ip_list:
if re.match(ip_pattern, ip):
print(ip, 'is a valid IP address')
else:
print(ip, 'is not a valid IP address')
```
输出结果为:
```
192.168.1.1 is a valid IP address
10.0.0.1 is a valid IP address
172.16.0.1 is a valid IP address
256.256.256.256 is not a valid IP address
1.1.1.01 is not a valid IP address
```
该例子中,我们首先定义了IP地址的正则表达式,然后通过re模块的match函数对IP地址进行匹配,判断其是否为合法的IP地址。如果是合法的IP地址,则输出“is a valid IP address”,否则输出“is not a valid IP address”。
阅读全文