我有这个字符串:
{example1}{example2}{example3}
这是查找这些{
anything in it
}
的正则表达式:
/\{.*?\}/g
现在我想知道如何将它们放入数组中,以便我可以进行for in
语句。
我想要一个类似array("{example1}","{example2}","{example3}");
的数组?
答案 0 :(得分:15)
your_array = string.match( pattern )
答案 1 :(得分:12)
var matches = '{example1}{example2}{example3}'.match(/\{.*?\}/g);
// ['{example1}', '{example2}', '{example3}']
此外,您应该使用for
循环来遍历数组。 for in
可能会产生副作用,例如收集更多东西来迭代原型链。您可以使用hasOwnProperty()
,但for
循环更容易。
为了提高性能,您还可以在将length
属性包含在for
条件之前对其进行缓存。