【IPv6】IP字符串格式的正则表达式及详解

您所在的位置:网站首页 ip地址验证正则表达式 【IPv6】IP字符串格式的正则表达式及详解

【IPv6】IP字符串格式的正则表达式及详解

2024-06-26 19:07| 来源: 网络整理| 查看: 265

IPv6IP字符串格式的正则表达式 1、表达式全文 /^([\da-fA-F]{1,4}:){6}((25[0-5]|2[0-4]\d|1?\d\d?)\.){3}(25[0-5]|2[0-4]\d|1?\d\d?)$|^([\da-fA-F]{0,4}:):([\da-fA-F]{1,4}:){0,4}((25[0-5]|2[0-4]\d|1?\d\d?)\.){3}(25[0-5]|2[0-4]\d|1?\d\d?)$|^([\da-fA-F]{1,4}:){2}:([\da-fA-F]{1,4}:){0,3}((25[0-5]|2[0-4]\d|1?\d\d?)\.){3}(25[0-5]|2[0-4]\d|1?\d\d?)$|^([\da-fA-F]{1,4}:){3}:([\da-fA-F]{1,4}:){0,2}((25[0-5]|2[0-4]\d|1?\d\d?)\.){3}(25[0-5]|2[0-4]\d|1?\d\d?)$|^([\da-fA-F]{1,4}:){4}:([\da-fA-F]{1,4}:){0,1}((25[0-5]|2[0-4]\d|1?\d\d?)\.){3}(25[0-5]|2[0-4]\d|1?\d\d?)$|^([\da-fA-F]{1,4}:){5}:((25[0-5]|2[0-4]\d|1?\d\d?)\.){3}(25[0-5]|2[0-4]\d|1?\d\d?)$|^([\da-fA-F]{1,4}:){7}[\da-fA-F]{1,4}$|^[\da-fA-F]{0,4}:((:[\da-fA-F]{1,4}){1,6}|:)$|^([\da-fA-F]{1,4}:){2}((:[\da-fA-F]{1,4}){1,5}|:)$|^([\da-fA-F]{1,4}:){3}((:[\da-fA-F]{1,4}){1,4}|:)$|^([\da-fA-F]{1,4}:){4}((:[\da-fA-F]{1,4}){1,3}|:)$|^([\da-fA-F]{1,4}:){5}((:[\da-fA-F]{1,4}){1,2}|:)$|^([\da-fA-F]{1,4}:){6}:([\da-fA-F]{1,4})?$|^([\da-fA-F]{1,4}:){6}:$/ 2、分段解释 2.1 IPv6 兼容IPv4规则

IPv6兼容IPv4的字符串格式是一种特殊的IPv6地址表示方法,用于在IPv6网络中表示IPv4地址。这种表示方法使用了IPv4映射地址和6to4地址。 IPv4映射地址用于将IPv4地址嵌入到IPv6地址中。它使用冒号(:)分隔的四个十六进制数字来表示,其中前三个数字表示网络的IPv6前缀,而后一个数字表示IPv4地址的八位数。例如,0:0:0:0:0:FFFF:w.x.y.z 或 ::FFFF:w.x.y.z 表示一个IPv4地址 w.x.y.z。

2.1.1 IPv4的正则

IPv4地址位小于等于255的三个数字用小数点分割。例如,w.x.y.z 表示一个IPv4地址 w.x.y.z。

/^((25[0-5]|2[0-4]\d|1?\d\d?)\.){3}(25[0-5]|2[0-4]\d|1?\d\d?)$/ 2.1.2 IPv6兼容IPv4全字符的正则

IPv6兼容IPv4的字符串格式,则是在IPv4串前加上以冒号隔开的6组4位16进制字符,并在IPv4前加冒号隔开。例如,FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:w.x.y.z 。

^([\da-fA-F]{1,4}:){6}((25[0-5]|2[0-4]\d|1?\d\d?)\.){3}(25[0-5]|2[0-4]\d|1?\d\d?)$ 2.1.3 IPv6兼容IPv4字符带省略写法的正则

IPv6格式可以进行缩写,缩写规则是两个冒号之间如果都是0的话可以省略,出现一个双冒号,但是双冒号只能出现一个,例如,FFFF::FFFF:FFFF:FFFF:FFFF:ww.x.y.z 或 ::FFFF:w.x.y.z

^([\da-fA-F]{0,4}:):([\da-fA-F]{1,4}:){0,4}((25[0-5]|2[0-4]\d|1?\d\d?)\.){3}(25[0-5]|2[0-4]\d|1?\d\d?)$| ^([\da-fA-F]{1,4}:){2}:([\da-fA-F]{1,4}:){0,3}((25[0-5]|2[0-4]\d|1?\d\d?)\.){3}(25[0-5]|2[0-4]\d|1?\d\d?)$| ^([\da-fA-F]{1,4}:){3}:([\da-fA-F]{1,4}:){0,2}((25[0-5]|2[0-4]\d|1?\d\d?)\.){3}(25[0-5]|2[0-4]\d|1?\d\d?)$| ^([\da-fA-F]{1,4}:){4}:([\da-fA-F]{1,4}:){0,1}((25[0-5]|2[0-4]\d|1?\d\d?)\.){3}(25[0-5]|2[0-4]\d|1?\d\d?)$| ^([\da-fA-F]{1,4}:){5}:((25[0-5]|2[0-4]\d|1?\d\d?)\.){3}(25[0-5]|2[0-4]\d|1?\d\d?)$| 2.2 IPv6字符串格式

IPv6地址由8组由冒号分隔的4位十六进制数字组成,每组数字范围在0到ffff之间。例如,FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF。 IPv6格式可以进行缩写,缩写规则是两个冒号之间如果都是0的话可以省略,出现一个双冒号,但是双冒号只能出现一个,例如,FFFF::FFFF:FFFF:FFFF:FFFF:FFFF:FFFF 或 ::FFFF

2.2.1 IPv6全字符串的正则

IPv6地址由8组由冒号分隔的4位十六进制数字组成,每组数字范围在0到ffff之间。例如,FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF。

^([\da-fA-F]{1,4}:){7}[\da-fA-F]{1,4}$ 2.1.2 IPv6字符带省略写法的正则

IPv6格式可以进行缩写,缩写规则是两个冒号之间如果都是0的话可以省略,出现一个双冒号,但是双冒号只能出现一个,例如,FFFF::FFFF:FFFF:FFFF:FFFF:FFFF:FFFF 或 ::FFFF

^[\da-fA-F]{0,4}:((:[\da-fA-F]{1,4}){1,6}|:)$| ^([\da-fA-F]{1,4}:){2}((:[\da-fA-F]{1,4}){1,5}|:)$| ^([\da-fA-F]{1,4}:){3}((:[\da-fA-F]{1,4}){1,4}|:)$| ^([\da-fA-F]{1,4}:){4}((:[\da-fA-F]{1,4}){1,3}|:)$| ^([\da-fA-F]{1,4}:){5}((:[\da-fA-F]{1,4}){1,2}|:)$| ^([\da-fA-F]{1,4}:){6}:([\da-fA-F]{1,4})?$| ^([\da-fA-F]{1,4}:){6}:$


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3