[英]regex for MAC address
我有以下用于检查有效 MAC 地址的内容
function isMacValid(mac) {
var regexMac = /^([0-9A-F]{2}[:-]){5}([0-9A-F]{2})$/i
return regexMac.test(mac);
}
这适用于与 6 个十六进制值标准匹配的 MAC 地址,由连字符或冒号分隔... 1a:2b:3c:4d:5e:6f
或e7-f8-90-0a-1b
我现在需要考虑另一种非标准符号,即只有 6 组没有分隔符的十六进制......所以1a2b3c4d5e6f
是可以接受的。 我现在如何使 : 或 - 可选?
你可以使用[:-]?
而不是[:-]
。
唯一的问题是 1a:2b:3c:4d:5e6f 和 1a-2b:3c:4d:5e:6f 将通过检查。 所以为了避免这种情况,我建议你改变:
var regexMac = /^([0-9A-F]{2}[:-]){5}([0-9A-F]{2})$/i
和
var regexMac = /^((([0-9A-F]{2}:){5})|(([0-9A-F]{2}-){5})|([0-9A-F]{10}))([0-9A-F]{2})$/i
它不那么漂亮但有效
var regexMac = /^([0-9a-fA-F]{2}\W){6}$/i
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.