python中正则表达式ip匹配
时间: 2023-09-01 08:10:24 浏览: 99
以下是Python中使用正则表达式匹配IP地址的示例代码:
```python
import re
ip = '192.168.0.1'
# 匹配IP地址的正则表达式
pattern = r'^((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)$'
result = re.match(pattern, ip)
if result:
print('IP地址合法')
else:
print('IP地址不合法')
```
解释一下正则表达式:
- `^` 表示字符串的开头
- `((25[0-5]|2[0-4]\d|[01]?\d\d?)\.)` 表示匹配一个数字在0~255之间的IP地址段,其中`25[0-5]`表示250~255,`2[0-4]\d`表示200~249,`[01]?\d\d?`表示0~199,可能有前导0
- `{3}` 表示匹配三次前面的表达式,即匹配三个IP地址段
- `(25[0-5]|2[0-4]\d|[01]?\d\d?)$` 表示匹配最后一个IP地址段,结尾使用`$`表示字符串的结尾
因此,以上正则表达式可以匹配所有合法的IPv4地址。
阅读全文