關於Python正則表示式匹配IP地址
阿新 • • 發佈:2019-02-11
正則表示式匹配的時候,不加開始符,結束符匹配的話,無法得到正確的匹配結果,為何?
分析 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)