在JavaScript中将逗号分隔的字符串转换为数组

时间:2015-06-29 09:25:31

标签: javascript arrays

如何将此字符串转换为包含lenght=4且所有项目为字符串的数组?

var str= "[bc, cccc, 14.35],[B, 222],[222, p11, 11s],[cccc, 14.35, D, 11s]";

4 个答案:

答案 0 :(得分:0)

使用JavaScript split("spacer")执行此任务:

<强> JAVASCRIPT

var str = "[bc, cccc, 14.35],[B, 222],[222, p11, 11s],[cccc, 14.35, D, 11s]";
var str_array = str.split("],");
console.log(str_array.lenght); // display "4"

我使用],作为间隔符,因为你会有一些其他元素被拆分,因为它们包含几个逗号。

具体建议 如果您需要删除][个剩余字符,则可以使用replace("to_be_replaced", "replacer"),如下所示:

str_array.forEach(function(entry) {
    entry.replace("]", "");
    entry.replace("[", "");
});

答案 1 :(得分:0)

var str= "[bc, cccc, 14.35],[B, 222],[222, p11, 11s],[cccc, 14.35, D, 11s]".split("],[");

答案 2 :(得分:0)

如果您愿意,以下内容会保留]

var str= "[bc, cccc, 14.35],[B, 222],[222, p11, 11s],[cccc, 14.35, D, 11s]";
var res = str.split('],').join(']],').split('],')

结果:

res = ["[bc, cccc, 14.35]","[B, 222]","[222, p11, 11s]","[cccc, 14.35, D, 11s]"]

&#13;
&#13;
 var str = "[bc, cccc, 14.35],[B, 222],[222, p11, 11s],[cccc, 14.35, D, 11s]";
 var res = str.split('],').join(']],').split('],')
 for (var k in res) {
   document.body.innerHTML += res[k] + "<br/>"
 }
&#13;
&#13;
&#13;

答案 3 :(得分:0)

您可以删除第一个和最后一个括号并使用split功能 下面是工作代码片段,它将您的字符串转换为4个字符串,不带任何括号或外部逗号。

var s = "[bc, cccc, 14.35],[B, 222],[222, p11, 11s],[cccc, 14.35, D, 11s]";

var sArr = s.substr(1, s.length - 2).split('],[');

for (var k in sArr)
    document.body.innerHTML += sArr[k] + "<br/><br/>";