Python编写正则表达式程序,判断输入的字符串是否为合法的IP地址;
时间: 2023-11-22 15:52:46 浏览: 90
python实现判断一个字符串是否是合法IP地址的示例
可以使用Python的re模块来编写正则表达式程序,判断输入的字符串是否为合法的IP地址。以下是一个示例代码:
```python
import re
def is_valid_ip_address(ip_address):
pattern = r'^((25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.|$)){4}$'
return re.match(pattern, ip_address) is not None
# 测试示例
print(is_valid_ip_address('192.168.0.1')) # True
print(is_valid_ip_address('255.255.255.255')) # True
print(is_valid_ip_address('10.0.0.1')) # True
print(is_valid_ip_address('172.16.0.1')) # True
print(is_valid_ip_address('256.256.256.256')) # False
print(is_valid_ip_address('192.168.0.')) # False
print(is_valid_ip_address('192.168.0.1.2')) # False
```
正则表达式的含义:
- `^` 表示字符串的开头;
- `(25[0-5]|2[0-4]\d|[0-1]?\d?\d)` 表示一个数字,可以是 0-9、10-99、100-199、200-249、250-255;
- `(\.|$)` 表示这个数字后面要么是点号,要么是字符串的结尾;
- `{4}` 表示上面的数字和点号组成的组合需要匹配四次;
- `$` 表示字符串的结尾。
阅读全文