8

可能重复:
什么是 MAC 地址的正则表达式?

我想验证一个字符串以确保它是一个有效的 MAC 地址。

Jquery 或 Javascript 中的任何想法?

我有以下内容:

var mystring= '004F78935612'  - This type of MAC Address
var rege = /([0-9a-fA-F][0-9a-fA-F]){5}([0-9a-fA-F][0-9a-fA-F])/;
alert(rege.test(mystring));

但它并不是那么准确。

IE。我的纸巾盒是有效的 MAC 地址?!?

谢谢!

4

1 回答 1

19

这个问题中获取正则表达式,您可以像这样实现它:

var mystring= 'Hello';

var regex = /^([0-9A-F]{2}[:-]){5}([0-9A-F]{2})$/;

alert(regex.test(mystring));

http://jsfiddle.net/s2WDq/

此正则表达式搜索字符串的开头^,然后是两个十六进制数字[0-9A-F]{2},然后是冒号或破折号[:-],五次以上(...){5},然后是最后一组两个十六进制数字[0-9A-F]{2},最后是字符串的结尾$

编辑:针对您的评论,Pinch,该格式不被视为有效的 MAC 地址。但是,如果您想支持它,只需?在正确的位置添加一个:

/^([0-9A-F]{2}[:-]?){5}([0-9A-F]{2})$/
// question mark  ^ allows the colon or dash to be optional
于 2012-08-17T17:53:49.277 回答