2025/12/30 23:51:39
网站建设
项目流程
建网站卖虚拟资源需要怎么做,wordpress主开发,网站开发留言板,网站网站做代理方法一#xff1a;正则表达式构造适用该题目的 “IPv4” 地址的正则表达式。注意前面讨论的前置零问题#xff0c;它不属于 IPv4 地址。在 Python 中使用原始字符串 r 构造正则表达式#xff1a;在 Java 中使用标准字符串构造正则表达式#xff1a;现在问题被简化为检查每个…方法一正则表达式构造适用该题目的 “IPv4” 地址的正则表达式。注意前面讨论的前置零问题它不属于 IPv4 地址。在 Python 中使用原始字符串 r 构造正则表达式在 Java 中使用标准字符串构造正则表达式现在问题被简化为检查每个块是否正确每个块的范围为 (0, 255)且不允许有前置零出现。一共有五种情况块只包含一位数字范围是 0 到 9。块包含两位数字第一位的范围是 1 到 9第二位是 0 到 9。块包含三位数字且第一位为 1。第二、三位可以是 0 到 9。块包含三位数字且第一位为 2第二位为 0 到 4。那么第三位可以是 0 到 9。块包含三位数字且第一位为 2第二位为 5那么第三位可以是 0 到 5。创建包含这 5 种情况的正则表达式。使用相同逻辑构造匹配 IPv6 地址的正则表达式。Python 实现import re class Solution: chunk_IPv4 r([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]) patten_IPv4 re.compile(r^( chunk_IPv4 r\.){3} chunk_IPv4 r$) chunk_IPv6 r([0-9a-fA-F]{1,4}) patten_IPv6 re.compile(r^( chunk_IPv6 r\:){7} chunk_IPv6 r$) def validIPAddress(self, IP: str) - str: if . in IP: return IPv4 if self.patten_IPv4.match(IP) else Neither if : in IP: return IPv6 if self.patten_IPv6.match(IP) else Neither return NeitherJava 实现import java.util.regex.Pattern; class Solution { String chunkIPv4 ([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]); Pattern pattenIPv4 Pattern.compile(^( chunkIPv4 \\.){3} chunkIPv4 $); String chunkIPv6 ([0-9a-fA-F]{1,4}); Pattern pattenIPv6 Pattern.compile(^( chunkIPv6 \\:){7} chunkIPv6 $); public String validIPAddress(String IP) { if (IP.contains(.)) { return (pattenIPv4.matcher(IP).matches()) ? IPv4 : Neither; } else if (IP.contains(:)) { return (pattenIPv6.matcher(IP).matches()) ? IPv6 : Neither; } return Neither; } }