« VBAのReplace()関数の代替関数 | トップページ | VBScriptやVBAのSplit()関数の代替関数 »

2008年5月 6日 (火)

VBScriptやVBAのSplit()関数も、チョー遅い!

Split()関数もReplace()関数と同程度に遅いですね。

a = String(1024 * 1024,"a")
t1 = Timer
b = Split(a, "a")
MsgBox Timer - t1
' 32.125

同程度に遅いのでは、Replace()の代替には使えません。

a=String(1024*1024,"a")
t1=Timer
b=Join(Split(a,"a"),"b")
MsgBox Timer-t1
' 33.125

と言うか、こんなに性能が近いのは、Replace()の実装が、実は、Join(Split())だったりして?

それにしても、ひどい実装です。

Replace()関数は、高速なRegExpのReplace()メソッドで代替できるのでよいけれど、Split()関数の代替はどうしましょう?

« VBAのReplace()関数の代替関数 | トップページ | VBScriptやVBAのSplit()関数の代替関数 »