我有一个像这样的字符串 "12,a,{3,4},b,c"
,我需要将其转换为一个数组,其中大括号中的元素应该是子数组,结果应该是这样的
["12","a",[3,4],"b","c"]
对于其他例如:
"12,a,b,c,{e,f}"--> ["12","a","b","c", ["e","f"] ]
"{12,a},b,c,{c,d}"--> [["12","a"],"b","c", ["e", “f”]]
最佳答案
您可以尝试以下代码:
a = "{12,a},b,c,{c,d}";
m = a.match(/{[^}]*}|[^,]+/g);
arr=[];
for (i=0; i<m.length; i++) {
if (m[i].indexOf('{') >= 0)
arr.push(m[i].replace(/[{}]/g, "").split(/,/));
else
arr.push(m[i]);
}
console.log(arr);
输出:
[[12,a],b,c,[c,d]]
关于javascript - 将类似字符串的数组替换为带有字符替换的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19651209/