判断是否是私网IP地址
私网IP地址范围如下:
- 192.168.0.0-192.168.255.255
- 172.16.0.0-172.31.255.255
- 10.0.0.0-10.255.255.255
我们使用正则去进行匹配:
根据上一篇文章判断是否是IP地址,此处只要加上三个主要的匹配条件问题就迎刃而解
^((192\.168)|(10\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d))|(172\.(1[6-9]|2[0-9]|3[0-1])))\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)$
使用python进行处理
import re
f1 = open('4.txt','r')
def internal(ipadd):
a=re.findall(r'^((192\.168)|(10\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d))|(172\.(1[6-9]|2[0-9]|3[0-1])))\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)\.(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d)$',ipadd)
if a:
return True
if __name__ == '__main__':
for i in f1.readlines():
if internal(i):
print i.strip()+' is internal IP Address'