我正在尝试编写一个Chrome扩展程序,它会扫描网页上的有效MAC代码并将每个扩展到一个数组。我有一个验证MAC的正则表达式,但我不能让它匹配多个代码。
以下是我的代码的快速摘录:
var regex = /^([0-9A-F]{2}[:-]){5}([0-9A-F]{2})$/;
var body = document.body.innerText.replace(/\n/g,' ');
console.log(body.match(regex));
var occur = regex.exec(body);
console.log(occur);
非常感谢。
答案 0 :(得分:1)
MAC地址通常是6组,每组两个十六进制数字(0-9,A,B,C,D,E,F),用冒号(:)或连字符( - )分隔。
你在找这个吗?
/([0-9A-F]{2}(?:[:-][0-9A-F]{2}){5})/g
从索引1获取匹配的组。
答案 1 :(得分:1)
删除字符串^
的开头和字符串$
锚点的结尾,并使用g
(全局)修饰符。
var regex = /([0-9A-F]{2}[:-]){5}([0-9A-F]{2})/g
如文件中所述......
g
修饰符用于执行全局匹配(查找所有匹配项,而不是在第一次匹配后停止)