1

文字列を分割してarraycollectionに送信しようとしています。問題は、各レコードに複数のフィールドが含まれていることです。1つのフィールドで、その方法を見つけましたが、私の場合は違います。

var str:String="12/12/2008-70,15#05/03/2005-193,50#23/04/1987-45,23";

 public function splitDouble(stringInit:String,sep1:String):ArrayCollection{


            var tempAc:ArrayCollection= new ArrayCollection((stringInit.split(sep1)));
            return tempAc;
        }

    }

レコード区切り文字は「#」、フィールド区切り文字は「、」です。そのようなものを追加したいと思います:tempAc [0] [0] == 12/12/2008; tempAc [0] [1] == 70,15;

ありがとう

それで、私がそれを解決するのを手伝ってくれませんか?

ありがとう

4

1 に答える 1

2

その近くで、次のようなことを試してください。

public function splitDouble(source:String,rSeparator:String,fSeparator:String):ArrayCollection{
            var records:Array = source.split(rSeparator);
            var result:Array = [];
            for (var i : int = 0; i < records.length; i++) {
                result[i] = records[i].split(fSeparator);
            }
            return new ArrayCollection(result);
        }

簡潔にするために、 every()関数を使用できますが、匿名関数などを使用しない方がシンプルでクリーンだと思います。

于 2012-06-17T13:14:18.807 に答える