CSV形式から値のリスト抽出


while (my $line = <DATA>) {
  $line .= <DATA> while ($line =~ tr/"// % 2 and !eof(DATA));
 
  $line =~ s/(?:\x0D\x0A|[\x0D\x0A])?$/,/;
  @values = map {/^"(.*)"$/s ? scalar($_ = $1, s/""/"/g, $_) : $_}
                ($line =~ /("[^"]*(?:""[^"]*)*"|[^,]*),/g);
 
  # @values
} 

  • 値に改行コードを含んでも処理できる。



Top > 言語 > perl > Tips > CSV形式から値のリスト抽出
link_pdfプラグインはご利用いただけなくなりました。























-

最終更新:2008年11月25日 10:12