perlでcsv

http://blog.livedoor.jp/dankogai/archives/50765677.html
CSVからデータを取り込むときText::CSVが便利だよという話。Perlメモでも","や\sの扱いの対処法が出ていた。業務用のCSVでは重要な問題らしい。
数値のみのCSVではsplitから@dataに取り込むところが遅くなりがちで100万行くらいになると問題になる。split関数がすべての列データをメモリに出力する事と配列データを作る事が処理量を増やしているようだ。たいてい1カラム取り出せばすむので

my $colum_match = "^>";
for (my $n = 0; $n < ***; $+n++){
   $colum_match .= "\d*?\t";
}
$colum_match .="(\d*)";

while ($line =~ m/$colum_match/){
  $1
}

みたいにして参照したほうが早い。