在使用正则表达式验证IPv6地址时,需要注意IPv6地址中字母的大小写,应该使用[a-fA-F]来匹配16进制数。
表达式:复制
/^(?:(?:[a-fA-F0-9]{1,4}:){6}|::(?:[a-fA-F0-9]{1,4}:){5}|(?:[a-fA-F0-9]{1,4})?::(?:[a-fA-F0-9]{1,4}:){4}|(?:(?:[a-fA-F0-9]{1,4}:){0,1}[a-fA-F0-9]{1,4})?::(?:[a-fA-F0-9]{1,4}:){3}|(?:(?:[a-fA-F0-9]{1,4}:){0,2}[a-fA-F0-9]{1,4})?::(?:[a-fA-F0-9]{1,4}:){2}|(?:(?:[a-fA-F0-9]{1,4}:){0,3}[a-fA-F0-9]{1,4})?::[a-fA-F0-9]{1,4}:(?:[a-fA-F0-9]{1,4}:){1}|(?:(?:[a-fA-F0-9]{1,4}:){0,4}[a-fA-F0-9]{1,4})?::[a-fA-F0-9]{1,4}|(?:(?:[a-fA-F0-9]{1,4}:){0,5}[a-fA-F0-9]{1,4})?::[a-fA-F0-9]{1,4}|(?:(?:[a-fA-F0-9]{1,4}:){0,6}[a-fA-F0-9]{1,4})?::)/
测试值 结果
2001:0db8:85a3:0000:0000:8a2e:0370:73341
101:0db8:85a3:0000:0000:8a2e:0370:73341
2001:0db8:85a3:0000:0000:8a2e:03701
2001:0db8:85a3:::0000:0000:8a2e:03701
0000:0000:8a2e:03700
说明结果为1表示True,结果为0表示False
请输入您需要检测的值: