2011-04-28 79 views
2

我想寫一個正則表達式,將採取這句話忽略空格/換行符在正則表達式AS3

[[32, 120], x1y1, [object pieceP1], null] 

最終我需要開,使得最終的輸出

結束了它打破一切內
32 
120 
x1y1 
[object pieceP1] 
null 

現在我走這句話這是一種接近我想要

var re3:RegExp =/, | \ [ | \ ] /s; 

但是我最後這個結果是

32 
120 

x1y1 

object pieceP1 

null 

正如你看到的,讓這些空行和空格被刪除我得到一噸的空行和空白......我該怎麼修改我的表達?我讀到在表達式結尾處有x會起作用,但這沒有做任何事情。

回答

2

您可以filter分裂後的結果。我已經改變你的RegExp略

var str:String = "[[32, 120], x1y1, [object pieceP1], null]"; 
var bits:Array = str.split(/[\[\],]+\s?/).filter(function(x) { return !!x }); 

// ["32", "120", "x1y1", "object pieceP1", "null"] 
+0

太棒了,這是非常有用的!如果我能鼓勵你,我會哈哈,但我想我現在不能。 – 2011-04-28 09:59:23

+0

沒問題,不客氣 – meouw 2011-04-28 10:06:32

+0

謝謝stema,回答接受,再次感謝meouw – 2011-04-29 00:34:44