python中判断一个字符串是否是IP地址


在OPS编程中,经常需要判断一个输入字符串是不是IP或网址,这需要采用正则表达是的方法:

判断是否是IP:

import re

def isIP(str):
    p = re.compile('^((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)$')
    if p.match(str):
        return True
    else:
        return False


myStr = "255.255.abc.255"

if isIP(myStr):
    print(myStr,"is a IP!")
else:
    print(myStr, "is not a IP!")

运行结果为:

255.255.abc.255 is not a IP!