题解 | #验证IP地址#
验证IP地址
https://www.nowcoder.com/practice/55fb3c68d08d46119f76ae2df7566880
import re # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # 验证IP地址 # @param IP string字符串 一个IP地址字符串 # @return string字符串 # class Solution: def solve(self , IP: str) -> str: # write code here arr = IP.split('.') if len(arr) == 4: flag = True for clo in arr: if clo.startswith('0'): flag = False break else: my_re = re.compile(r'[A-Za-z]', re.S) res = re.findall(my_re, clo) if len(res): flag = False break else: if int(clo) > 0 and int(clo) <= 255: continue else: flag = False break if flag: return "IPv4" else: return "Neither" else: arr = IP.split(':') if len(arr) == 8: flag = True for clo in arr: if clo == '': flag = False break else: my_re = re.compile(r'[G-Zg-z]', re.S) res = re.findall(my_re, clo) if len(res): flag = False break else: if len(clo) > 4: flag = False break else: if int(clo,16) >= 0 and int(clo,16) <= 65535: continue else: flag = False break if flag: return "IPv6" else: return "Neither" else: return "Neither"#23届的你们都什么时候入职?#