2010-12-16 144 views

回答

3
var src = "1c2c3r4c5c6r6c8c9"; 
var rows = src.split(/r/); 

for (var i = 0; i < rows.length; i++) 
    rows[i] = rows[i].split(/c/); 

請注意,我沒有測試此所以它可能包含語法錯誤或東西...

1

這應該工作:

var src = "1c2c3r4c5c6r6c8c9"; 
var rows = src.split(/r/g); 

for (var i = 0; i < rows.length; i++) { 
    var cells = rows[i].split(/c/g); 
    for (var j = 0; j < cells.length; j++) { 
     cells[j] = parseInt(cells[j]); 
    } 
    rows[i] = cells; 
} 
3

你可以n使用地圖法在Array

var s = "1c2c3r4c5c6r6c8c9"; 
var rows = s.split("r"); 
result = rows.map(function (x) { 
    return x.split('c'); 
})); 

map在ECMAScript5介紹,並在舊的瀏覽器不支持。但是,有一個體面的解決方案here

2
var str = "1c2c3r4c5c6r6c8c9"; 
var result = []; 
var group = str.split("r"); 
for(i in group) {result.push(group[i].split("c"))}; 

結果應該是你想要的。