Python正在检查ip地址(后面没有内容)

2024-03-29 07:04:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试创建一个Python(2.7)函数,它将接受一个字符串,如果输入的是一个ip地址,则返回true,可能在末尾加一个斜杠,否则返回false。 如果字符串不仅仅是一个ip地址,而是一个后跟某种路径的ip地址,那么它需要返回一个假值。 地址是否有效并不重要(999.999.999.999可以被视为IP地址)。在

例如: “124.131.141.248”-正确 “124.131.141.248/”—正确 “124.131.141.248/bla”-错误 “你好世界”-错

我尝试过寻找解决方案,但大多数解决方案都只是检查有效的IP地址,而忽略了我的其他需求。在

任何帮助都将不胜感激。在

谢谢


Tags: 函数字符串路径ipfalsetrue地址错误
2条回答

这似乎奏效了:

import re
def valid_ip(ip):
    if re.match(r'(\d+\.?){4}\\?$', ip):
        return True
    else:
        return False

使用简单的正则表达式很容易解决:

import re
pattern = re.compile("\d{3}\.\d{3}\.\d{3}\.\d{3}(\/)?$")
string1 = "124.131.141.248"
string2 = "124.131.141.248/"
string3 = "124.131.141.248/bla"
string4 = "hello world" 
print(pattern.match(string1)!=None) # true
print(pattern.match(string2)!=None) # true
print(pattern.match(string3)!=None) # false
print(pattern.match(string4)!=None) # false

Here一个正在运行的示例。在

相关问题 更多 >