Javascript 使用正则表达式提取元标记

Javascript 使用正则表达式提取元标记,javascript,node.js,regex,Javascript,Node.js,Regex,我需要从使用\的字符串中提取meta标记,但除此之外,如果meta中有一些ignore(或someIgnore)属性,我希望忽略它 这是我的示例函数 函数解析元(局部变量){ var str=locals.body,regex=/\/g; if(正则表达式测试(str)){ locals.body=str.replace(regex',); locals.meta=str.match(regex).join('\n'); } } 您可以在正则表达式中使用负前瞻 function parseM

我需要从使用
\
的字符串中提取meta标记,但除此之外,如果meta中有一些ignore(或someIgnore)属性,我希望忽略它


这是我的示例函数


函数解析元(局部变量){
var str=locals.body,regex=/\/g;
if(正则表达式测试(str)){
locals.body=str.replace(regex',);
locals.meta=str.match(regex).join('\n');
}
}

您可以在正则表达式中使用
负前瞻

function parseMetas(locals) {
    var str = locals.body, 
    let regex = /<meta(?!.*?(ignore|someIgnore))[\s\S]*?\/?>/g;
    if (regex.test(str)) {
        locals.body = str.replace(regex, '');
        locals.meta = str.match(regex).join('\n');
    }
}
函数解析元(局部){
var str=locals.body,
设regex=//g;
if(正则表达式测试(str)){
locals.body=str.replace(regex',);
locals.meta=str.match(regex).join('\n');
}
}
演示:

let regex=//g;
让输入=`
,
,
,
,
,
'
`;
console.log(input.match(regex))