Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 有没有办法获得分组结果以及所有匹配的正则表达式字符串_Javascript_Regex - Fatal编程技术网

Javascript 有没有办法获得分组结果以及所有匹配的正则表达式字符串

Javascript 有没有办法获得分组结果以及所有匹配的正则表达式字符串,javascript,regex,Javascript,Regex,我想得到正则表达式匹配的结果以及组匹配 输入字符串: var str= ' application [<!ENTITY % common SYSTEM "../common.ent">\n%common;] <!ENTITY % name PUBLIC "public_ID" "URI">' 仅将结果转换为匹配字符串: ["<!ENTITY % common SYSTEM "../common.ent">", "<!ENTITY % name

我想得到正则表达式匹配的结果以及组匹配

输入字符串:

  var str= ' application [<!ENTITY % common  SYSTEM "../common.ent">\n%common;] <!ENTITY % name PUBLIC "public_ID" "URI">'
仅将结果转换为匹配字符串:

["<!ENTITY % common  SYSTEM "../common.ent">", "<!ENTITY % name PUBLIC "public_ID" "URI">"]
[“”,“”]
如何获得组匹配的结果

例如,在本例中,我预期会出现如下情况:

[{
   matched : "<!ENTITY % common  SYSTEM "../common.ent">",
   groups : ["common", "SYSTEM", "../common.ent"]
}, {
   matched : "<!ENTITY % name PUBLIC "public_ID" "URI">",
   groups : ["name", "PUBLIC", "public_ID", "URI"]
}]
[{
匹配:“,
组:[“通用”、“系统”、“通用./common.ent”]
}, {
匹配:“,
组:[“名称”、“公共”、“公共ID”、“URI”]
}]
编辑: 只是有点想知道regex101.com是怎么回事 展示这个


Ref:

在javascript中,一次调用是不可能的,您必须在循环中调用它

var str='application[\n%common;]';
var rg=//g;
var结果;
var结果=[];
while(result=rg.exec(str)){
结果。推(结果);
}
//这个部分和它们的连接只是为了显示结果
document.getElementById(“结果”).innerText=results.join(@@@@);
document.getElementById(“结果”).innerHTML=document.getElementById(“结果”).innerHTML.replace(“@@@@@@“,”
); //使用Win7 Chrome 38+进行测试

我的答案有用吗,还是我遗漏了什么?
["<!ENTITY % common  SYSTEM "../common.ent">", "<!ENTITY % name PUBLIC "public_ID" "URI">"]
[{
   matched : "<!ENTITY % common  SYSTEM "../common.ent">",
   groups : ["common", "SYSTEM", "../common.ent"]
}, {
   matched : "<!ENTITY % name PUBLIC "public_ID" "URI">",
   groups : ["name", "PUBLIC", "public_ID", "URI"]
}]