我使用以下内容来检查有效的 MAC 地址
function isMacValid(mac) {
var regexMac = /^([0-9A-F]{2}[:-]){5}([0-9A-F]{2})$/i
return regexMac.test(mac);
}
Run Code Online (Sandbox Code Playgroud)
这适用于符合由连字符或冒号分隔的 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
Run Code Online (Sandbox Code Playgroud)
和
var regexMac = /^((([0-9A-F]{2}:){5})|(([0-9A-F]{2}-){5})|([0-9A-F]{10}))([0-9A-F]{2})$/i
Run Code Online (Sandbox Code Playgroud)
它不太漂亮但有效
| 归档时间: |
|
| 查看次数: |
3973 次 |
| 最近记录: |