我试图为上述场景构建一个有效的正则表达式,但它不起作用。
- 它应该用前导"来限制MAC ID;01〃;(01 xx xx xx xx(。例如
01:AA:BB:05:31:01
<-无效。
21:51:51:31:01:AA
<-有效的
- 它应该限制
FF:FF:FF:FF:FF:FF
完全匹配
到目前为止我所做的一切都在这里。
^((?!01|FF|88|87|ff|00)[0-9a-fA-F]{2}([:-]|$)){6}$
如果您想转义以01|FF|88|87|ff|00
开头的任何内容,请使用此
pattern=/^(?=[^01|FF|88|87|ff|00])([0-9a-fA-F]{2}[:]){5}[0-9a-fA-F]{2}/gm
如果你想逃离开始的01|88|87|00
,并且只有一个完整的模式FF使用这个而不是
pattern=/^(?!01|88|87|00|FF:FF:FF:FF:FF:FF)([0-9a-fA-F]{2}[:]){5}[0-9a-fA-F]{2}/
您可以尝试以下操作:
var macAddressAllowed = function(macAddr) {
// regEX for valid MAC address
var regExp = "^([0-9a-fA-F][0-9a-fA-F]:){5}([0-9a-fA-F][0-9a-fA-F])$";
var regex = new RegExp(regExp);
var validMac = regex.test(macAddr);
if(!validMac){
return false;
}else{
macAddr = macAddr ? macAddr.toLowerCase() : '';
var macAllowed = (macAddr === 'ff:ff:ff:ff:ff:ff' || macAddr.split(':')[0] === '01');
return macAllowed ? false: true;
}
};