📜  验证 IP 地址的Python程序

📅  最后修改于: 2022-05-13 01:55:11.741000             🧑  作者: Mango

验证 IP 地址的Python程序

先决条件: Python正则表达式

给定一个 IP 地址作为输入,编写一个Python程序来检查给定的 IP 地址是否有效。

什么是 IP(互联网协议)地址?
每台连接到 Internet 的计算机都由一个唯一的四部分字符串标识,称为其 Internet 协议 (IP) 地址。 IP 地址(第 4 版)由用句点分隔的四个数字(每个数字介于 0 和 255 之间)组成。 IP 地址的格式是一个 32 位数字地址,写成四个十进制数(称为八位字节),用句点分隔;每个数字都可以写成 0 到 255(例如 – 0.0.0.0 到 255.255.255.255)。

例子:

Input:  192.168.0.1
Output: Valid Ip address

Input: 110.234.52.124
Output: Valid Ip address

Input: 666.1.2.2
Output: Invalid Ip address 
 
Input:25.99.208.255 
Output: Valid Ip address

在这个程序中,我们使用了re 模块search()方法。
re.search() :此方法要么返回 None (如果模式不匹配),要么返回 re.MatchObject ,其中包含有关字符串匹配部分的信息。此方法在第一次匹配后停止,因此它最适合测试正则表达式而不是提取数据。

让我们看看验证 IP 地址的Python程序:

Python3
# Python program to validate an Ip address
 
# re module provides support
# for regular expressions
import re
 
# Make a regular expression
# for validating an Ip-address
regex = "^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])$"
 
 
     
# Define a function for
# validate an Ip address
def check(Ip):
 
    # pass the regular expression
    # and the string in search() method
    if(re.search(regex, Ip)):
        print("Valid Ip address")
         
    else:
        print("Invalid Ip address")
     
 
# Driver Code
if __name__ == '__main__' :
     
    # Enter the Ip address
    Ip = "192.168.0.1"
     
    # calling run function
    check(Ip)
 
    Ip = "110.234.52.124"
    check(Ip)
 
    Ip = "366.1.2.2"
    check(Ip)


输出:
Valid Ip address
Valid Ip address
Invalid Ip address