Javascript字符串拆分

时间:2013-11-15 17:32:21

标签: javascript jquery regex

我有一个像下面这样的字符串:

var str = '35,35,105,105,130,208,50,250';

我想拆分这个字符串并得到这样的结果:

var arr = [[35,35],[105,105],[130,208],[50,250]];

我尝试了一些方法,但没有一个能给我任何东西。我尝试使用循环找到偶数逗号位置和分割,但这对我来说似乎并不好。请给我一些建议。我正在寻找RegEx解决方案。

2 个答案:

答案 0 :(得分:5)

一种可能的方法:

'35,35,105,105,130,208,50,250'.match(/\d+,\d+/g).map(function(s) {
    return s.split(',');
});

一行中的另一个疯狂想法:

JSON.parse('['+ '35,35,105,105,130,208,50,250'.replace(/\d+,\d+/g, '[$&]') +']');

答案 1 :(得分:1)

这是一种方法。

var values = str.split(','),
    output = [];
while(values.length)
    output.push(values.splice(0,2));

如果str包含奇数个值,则输出中的最后一个数组将只包含一个使用此方法的值。