var re=/\"travelsName\"\:\"(.*?)\"/g; //searching global matches and extracting obtained matches in brackets
var data="travelsName":"ddd Travels","travelsName":"nnn Travels","travelsName":"xxx Travels",;//This is a string not json object
var myArray;
while ((myArray = re.exec(data)) != null)
{
msg = "Found " + myArray[1] + ". ";
}
Now i want the whole matched array of myArray[1], which is exact matched version of the regex.
现在我想要myArray [1]的整个匹配数组,这是正则表达式的完全匹配版本。
when i hit alert inside while loop i can see the array values . If i call alert outside the while loop then i am ending up with last array value in alert box which is not i want.
当我在循环中点击警报时,我可以看到数组值。如果我在while循环之外调用alert,那么我最后会在alert box中找到最后一个数组值,这不是我想要的。
I want whole array outside while loop. I want array[0]=ddd Travels array[1]=nnn Travels etc... This is done i ajax call and data will be loaded dynamically
我希望整个数组在循环之外。我想要array [0] = ddd Travels array [1] = nnn Travels等...这是我做的ajax调用,数据将动态加载
Thanks in advance
提前致谢
1 个解决方案
#1
0
Try this for your example:
试试这个例子:
var re=/\"travelsName\"\:\"(.*?)\"/g;
var data='"travelsName":"ddd Travels","travelsName":"nnn Travels","travelsName":"xxx Travels",';
var myTmpArray;
var myArray = [];
while ((myTmpArray= re.exec(data)) != null) {
myArray.push("Found " + myTmpArray[1] + ". ");
}
I'm sure that you can find better solution if you give more infirmation
如果你提供更多的信息,我相信你能找到更好的解决方案
#1
0
Try this for your example:
试试这个例子:
var re=/\"travelsName\"\:\"(.*?)\"/g;
var data='"travelsName":"ddd Travels","travelsName":"nnn Travels","travelsName":"xxx Travels",';
var myTmpArray;
var myArray = [];
while ((myTmpArray= re.exec(data)) != null) {
myArray.push("Found " + myTmpArray[1] + ". ");
}
I'm sure that you can find better solution if you give more infirmation
如果你提供更多的信息,我相信你能找到更好的解决方案