タグ

perlとcsvに関するseismanのブックマーク (1)

  • Perl and CSV

    CSV 形式の文字列を配列に分割する むかし日経MIXの awk 会議室で、CSV 形式の文字列を配列に分割するスクリプトが議論されていた。 それを perl で書くと、次のようなものだった。 sub splitcsv { local($csvstr) = @_; $csvstr .= ','; $csvstr =~ s/("([^"]|"")*"|[^,]*),/$1$;/g; $csvstr =~ s/"([^$;]*)"$;/$1$;/g; $csvstr =~ s/""/"/g; return split(/$;/, $csvstr); } ちょっと複雑でわかりにくいが、 $; という perl の特殊変数を使っていることに注目するとよい。 これは、「多次元配列のエミュレーションに用いる添え字セパレータ」[ウォールほか 1997 (1996): 150] である。 フィールドの区切

  • 1