Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.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_Jquery_Get - Fatal编程技术网

Javascript 仅返回找到的第一个结果的正则表达式

Javascript 仅返回找到的第一个结果的正则表达式,javascript,jquery,get,Javascript,Jquery,Get,可能重复: 我正在尝试解析如下所示的xml文档: var str = data.match("<string>" + "(.*?)" + "</string>"); console.log(str); var str=data.match(“+”(.*)“+”); console.log(str); 我想获取数组中[string]之间的所有元素,但由于某种原因,它只返回找到的第一个字符串元素。我不擅长正则表达式,所以我认为这只是一个小的正则表达式问题 您希望它是全局

可能重复:

我正在尝试解析如下所示的xml文档:

var str = data.match("<string>" + "(.*?)" + "</string>");
console.log(str);
var str=data.match(“+”(.*)“+”);
console.log(str);

我想获取数组中
[string]
之间的所有元素,但由于某种原因,它只返回找到的第一个
字符串
元素。我不擅长正则表达式,所以我认为这只是一个小的正则表达式问题

您希望它是全局的
g

var str="<string>1</string><string>2</string><string>3</string>"; 
var n=str.match(/<string>(.*?)<\/string>/g);
 //1,2,3
var str=“123”;
var n=str.match(/(.*)/g);
//1,2,3

您希望它是全局的
g

var str="<string>1</string><string>2</string><string>3</string>"; 
var n=str.match(/<string>(.*?)<\/string>/g);
 //1,2,3
var str=“123”;
var n=str.match(/(.*)/g);
//1,2,3

您必须在正则表达式中添加一个g,如下所示


/Regex/g

您必须在Regex中添加一个g,如下所示


/Regex/g

工作正常!我就知道会是这么小的东西。chears:)g实际上代表全球。贪婪(+vs.?)有不同的含义。@Christophe,ops,MyBad工作得很好!我就知道会是这么小的东西。chears:)g实际上代表全球。贪婪(+vs.?)有不同的含义。@Christophe,ops,mybad