2

我有一个字符串值,例如:

1,2,3;4,5,6;7,8,9;a,b,c;d,e,f;g,h,i

我需要将其转换为 JavaScript 中的数组,例如

1 2 3

4 5 6 

7 8 9

etc.

任何人都可以建议我如何做到这一点吗?

4

4 回答 4

3

您正在寻找String.split. 在您的情况下,您需要拆分两次。一旦;将字符串拆分为块,然后分别拆分每个块,以达到您正在寻找的数组结构。

function chunkSplit(str) {
    var chunks = str.split(';'), // split str on ';'
        nChunks = chunks.length, 
        n = 0;

    for (; n < nChunks; ++n) { 
        chunks[n] = chunks[n].split(','); // split each chunk with ','
    }

    return chunks;
}

var arr = chunkSplit("1,2,3;4,5,6;7,8,9;a,b,c;d,e,f;g,h,i");
于 2012-01-06T11:05:33.227 回答
1

尝试以下操作:

var yourString = '1,2,3;4,5,6;7,8,9;a,b,c;d,e,f;g,h,i';
var array = [];
yourString.split(';').forEach(function(value) {
  array.push(value.split(','));
});
于 2012-01-06T11:03:48.093 回答
1

如果您需要一个多维数组,您可以尝试:

var array = yourString.split(';');

var arrCount = array.length;
for (var i = 0; i < arrCount; i++)
{
  array[i] = array[i].split(',');
}
于 2012-01-06T11:04:27.827 回答
-1

以下拆分命令应该会有所帮助:

 yourArray = yourString.split(";");
于 2012-01-06T10:58:07.707 回答