なぜ、異なる結果match
をsplit
生み出すのですか?これはActionscript3.0にありますが、これがAS3以外でも当てはまる場合は、その理由も知りたいと思います。
例:
var txt:String = "somethingorother";
var re:RegExp = /(\w{2,2})/g;
trace("\t txt.split = " + txt.split(re) + " -- " + txt.split(re).length);
trace("\t txt.match = " + txt.match(re) + " -- " + txt.match(re).length);
結果:
txt.split = ,so,,me,,th,,in,,go,,ro,,th,,er, -- 17
txt.match = so,me,th,in,go,ro,th,er -- 8
編集:
与えられた条件で、結果は同じ配列になると思います(この場合、match
奇数の長さの最終エントリが見つからないことを除いてStrings
)。なぜ余分なエントリがあるのsplit
ですか?「正しく」なっているsplit
発見とは何ですか?match