AS3

2009-10-07 10 views
5

में एक स्ट्रिंग में एक सरणी परिवर्तित मैं अपेक्षाकृत प्रोग्रामिंग करने के लिए नया हूँ और मैं सोच रहा था कि कैसे मैं एक सरणी में बदल सकते हैं: जैसे अल्पविराम और लाइन-रिटर्न चित्रित सूचकांक, के एक स्ट्रिंग मेंAS3

[[0,0,0,0,0,0], 
[1,1,1,1,1,1], 
[2,2,2,2,2,2], 
[3,3,3,3,3,3], 
[4,4,4,4,4,4], 
[5,5,5,5,5,5]]; 

:

"0,0,0,0,0,0 
1,1,1,1,1,1 
2,2,2,2,2,2 
3,3,3,3,3,3 
4,4,4,4,4,4 
5,5,5,5,5,5" 

गतिशील फ़ंक्शन के साथ? मैंने एक इंपोड() फ़ंक्शन खोजा है लेकिन मुझे कुछ भी नहीं मिला। अग्रिम में धन्यवाद!

उत्तर

9
private function joinArrays(array:Array):String 
{ 
    var result:String = ""; 
    for each(var a:Array in array) 
    { 
     result += a.join() + "\n"; 
    } 
    return result; 
} 

या आप अंतिम पंक्ति के बाद लाइन ब्रेक नहीं चाहते हैं, तो:

var result:String = ""; 
var length:Number = array.length; 
for(var i:Number = 0; i < length; i++) 
{ 
    result += array[i].join(); 
    if(i != length - 1) 
     result += "\n"; 
} 
return result; 
+0

धन्यवाद, शानदार काम किया! भी समझने में आसान है। –

+2

'toString()' कहा जाता है जब डिफ़ॉल्ट जुड़ने वाले वर्ण ''' कहा जाता है, तो आप पूरी तरह से' for' को काट सकते हैं और बस 'trace (array.join ("\ n")) के साथ जा सकते हैं;' यह भी हल करेगा आपकी समाप्ति लाइन ब्रेक समस्या – enzuguri

1
function join_arr(arr) { 
    var newarr = []; 
    for (var i = 0; i < arr.length; i++) { 
     newarr.push(arr[i].join(",")); 
    } 
    return newarr.join("\n"); 
} 

यह परीक्षण नहीं किया है, लेकिन काम करना चाहिए :)

4

एक साधारण .toString() नौकरी करेगा!

var a:Array=[[0,0,0,0,0,0],[1,1,1,1,1,1],[2,2,2,2,2,2],[3,3,3,3,3,3],[4,4,4,4,4,4],[5,5,5,5,5,5]]; 
trace(">",a.toString()); 
//> 0,0,0,0,0,0,1,1,1,1,1,1,2,2,2,2,2,2,3,3,3,3,3,3,4,4,4,4,4,4,5,5,5,5,5,5 

संपादित करें: जैसा कि अक्सर, RegExp अपनी आत्मा की बचत होगी:)

var a:Array=[[0,0,0,0,0,0],[1,1,1,1,1,1],[2,2,2,2,2,2],[3,3,3,3,3,3],[4,4,4,4,4,4],[5,5,5,5,5,5]]; 
var columns:int=11;//columns count 
trace(a.toString().replace(new RegExp("(.{"+columns+"})(,?)","g"),"$1\n")); 
//output : 
//0,0,0,0,0,0 
//1,1,1,1,1,1 
//2,2,2,2,2,2 
//3,3,3,3,3,3 
//4,4,4,4,4,4 
//5,5,5,5,5,5 
+0

ने "लाइन-रिटर्न डिलीनेटेड इंडेक्स" को माफ नहीं किया है !! ;) – OXMO456

 संबंधित मुद्दे