- 276 名前:262 mailto:sage [2008/08/24(日) 05:01:37 ]
- >>265
遅いよー。 括弧を考えず、一桁でいいなら tr/// のが高速。 でも文字列単位の置換、文字数の異なる置換に対応できない。 速度的には、サブルーチンにせず >>266 の言うように全部インラインで書いたほうがマシ。 @circle_patterns = (); foreach (@circles) { push @circle_patterns, qr/$_/; } # (以下必要なセットで繰り返す) # とあらかじめ準備しておいて、 # 置換ループに入ったら、 $i = 1; foreach (@circle_patterns) { $str =~ s/$_/($i)/; $i++; } # (以下必要な...略) # などとやればちょっとは速くなる気がする。 置換対象が行数の多いファイルなら、一気読みで $str にひとつにまとめて突っ込んでしまうのも手。 データの傾向やらで効果的な最適化は変わるだろうから、いろいろ試して比較してみてね。
|

|