我有一个像下面这样的字符串:
var str = '35,35,105,105,130,208,50,250';
我想拆分这个字符串并得到这样的结果:
var arr = [[35,35],[105,105],[130,208],[50,250]];
我尝试了一些方法,但没有一个能给我任何东西。我尝试使用循环找到偶数逗号位置和分割,但这对我来说似乎并不好。请给我一些建议。我正在寻找RegEx
解决方案。
答案 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
包含奇数个值,则输出中的最后一个数组将只包含一个使用此方法的值。