IP:PORT正确格式---Python正则表达式

IP:PORT正确格式—Python正则表达式

用python的正则表达式来判断输入的ip:port字符串格式是否正确

ip:互联网协议地址
不考虑实际应用,理论上ip的范围是0.0.0.0~255.255.255.255
port:端口号
本文中指的是逻辑端口,端口数的范围是0 到65535
可用代码:

# -*- coding: utf-8 -*-

import re

#正则表达式
ip_port_format = ('^(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.'
                  '(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.'
                  '(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\.'
                  '(\d|[1-9]\d|1\d{2}|2[0-4]\d|25[0-5])\:'
                  '([0-9]|[1-9]\d{1,3}|[1-5]\d{4}|6[0-4]\d{3}|65[0-4]\d{2}|655[0-2]\d|6553[0-5])$')

#循环读取输入
flag = True
ipport = ''
while flag:
	//python2.X
	ipport = raw_input('Please enter the ip:port:')
	//python3.X
	//ipport = input('Please enter the ip:port:')
	if re.match(ip_port_format, ipport):
		flag = False
	else:
		print('Input format error')

测试结果(console):

Please enter the ip:port:1.1.1.1:
Input format error
Please enter the ip:port:172.0.1222.1:8080
Input format error
Please enter the ip:port:172.0.10.169:8080

Process finished with exit code 0

ip和port的正则表达式也可以单独使用啦


放上对我帮助很大的友情链接:正则表达式比较详细的教程

你可能感兴趣的:(Python)