简体   繁体   English

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

[英]Convert comma seperated string to array in JavaScript

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

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

Use JavaScript split("spacer") to perform this task :使用 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"

I used ], as spacer because you would have some others elements to be splitted as they contain several commas.我使用],作为间隔符,因为您将有一些其他元素要拆分,因为它们包含多个逗号。

SPECIFIC ADVICE If you need to remove ] and [ remaining characters, you can use replace("to_be_replaced", "replacer") as followed :具体建议如果您需要删除][剩余字符,您可以使用replace("to_be_replaced", "replacer")如下:

str_array.forEach(function(entry) {
    entry.replace("]", "");
    entry.replace("[", "");
});
var str= "[bc, cccc, 14.35],[B, 222],[222, p11, 11s],[cccc, 14.35, D, 11s]".split("],[");

Following will preserve ] if you want that:如果您愿意,以下将保留]

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

Result:结果:

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

 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/>" }

You can remove the first and the last brackets and use split function.您可以删除第一个和最后一个括号并使用split功能。
Here is the working code snippet which converts your string to 4 strings without any brackets or outer commas.这是将您的字符串转换为 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/>";

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM