- 855 名前:816 mailto:sage [2006/10/24(火) 03:02:33 ID:96jgfWU+0]
- >>850-851
乙です。 なるほど、こういう方法もありましたか。 置換に必要な場所にだけマッチさせる方法があったとは..。 それぞれのフィルターの速度を3万文字の数字で比較してみました。 計測には差が出やすいようにスーパーπ104万桁10分台の遅いマシンを使用。 --------------------------------------------------------------------- (1) (2) (3) (4) (5) 000.....0 000.....09 199.....9 999.....9 999....90 ( 対象文字列 ) >>824 43.319444 43.409722 49.640625 49.437500 46.897059 ( ミリ秒 ) >>843 48.953125 100.375000 70.340909 70.238636 33.804348 >>851 59.951923 60.000000 33.820652 25.366667 計測不能(応答なし) --------------------------------------------------------------------- >>851のフィルターは 99999.. の後ろが 9 以外の数字で終わる場合に極端に時間がかかるようです。 実用的には問題無いと思われますがちょっと気になります。 先読みで数字の末尾を確認する 処理を入れたほうが良いかも..。 (3)、(4) の速さがすごいですね、高速化済みの>>843の3倍も速いとは...w >>824は対象がどんな数字でも安定してることが分かります。 >>843は対象の末尾が 9 の場合をイレギュラーと考え、この場合の速度を無視した書き方なので 9 で終わる場合は遅いですね。
|

|