簡體   English   中英

將一維字符串數組轉換為二維數組

[英]Convert a 1D array of strings into a 2D array

我在這里有點新手,所以我會直接跳到我遇到的問題的例子中:

我想轉換一下:“ cat@dog%arm@hand%tree@apple...

進入這個:

cat | dog
arm | hand
tree| apple
..etc

如,電子表格中的2列或2D數組。 使用隔離字符串並不困難,正是數組操作讓我感到難過。

這是一次嘗試:`

function key_abb(input) {
  if(input.map) { 
    return input.map(key_abb);
  }else {
    var temp = input.toString();
    temp = temp.replace("abbreviated-name=", "");
    temp = temp.replace("name=", "");
    return temp;
  }
}`

輸入是一個輸入范圍,格式如下:

|abbreviated-name="cat"  name="dog"  |
|abbreviated-name="arm"  name="hand" |...

不幸的是,這仍然只是返回同一列中的兩個字符串,所以唯一完成的是刪除了額外的文本,我不知道如何創建我想要的輸出數組。 謝謝!

干得好:

 var str = 'cat@dog%arm@hand%tree@apple'; var data = str.split('%'); for (var i = 0; i < data.length; i++) { data[i] = data[i].split('@'); } console.log(data); 

結果是:

[
    ["cat", "dog"],
    ["arm", "hand"],
    ["tree", "apple"]
]

這是使用Array.map()的另一個選項:

 var str = 'cat@dog%arm@hand%tree@apple'; var data = str.split('%').map(function(item) { return item.split('@'); }); console.log(data); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM