关于Python正则表达式匹配IP地址

正则表达式匹配的时候,不加开始符,结束符匹配的话,无法得到正确的匹配结果,为何?


分析 255.255.255.255


255划分成4个段位

1-9     对应正则[1-9]

10-99   对应正则[1-9]\d

100-199  对应正则 1\d\d

200-255 对应正则 2[0-5][0-5]


# -*- coding=utf8 -*-



import re


ip1='192.168.1.1'
ip2='592.168.1.1'


pattern1=r'(([1-9]|[1-9]\d|1\d\d|2[0-5][0-5])\.){3}([1-9]|[1-9]\d|1\d\d|2[0-5][0-5])'
pattern2=r'^(([1-9]|[1-9]\d|1\d\d|2[0-5][0-5])\.){3}([1-9]|[1-9]\d|1\d\d|2[0-5][0-5])$'


print re.search(pattern1,ip1)
print re.search(pattern1,ip2)


print re.search(pattern2,ip1)

print re.search(pattern2,ip2)



你可能感兴趣的:(关于Python正则表达式匹配IP地址)