skillup

技術ブログ

Perl

PerlでのCSV取込+金額のカンマ表示

投稿日:

CSV取込の場合、単純にカンマで区切って配列を取得するだけのロジックを実装すると様々な弊害が起きます。

よく見られるパターンとしては下記のようなケースでしょう。

  • フィールドの中に、カンマがあった場合、意図しない場所で区切ってしまう
  • フィールドの中に、改行があった場合、別行としてみなしてしまう。

このような弊害があるため、一般的にはライブラリを使って取り込んだほうが安全です。

Perlの場合、Perl::CSV_XSというライブラリが有名です。

http://perldoc.jp/docs/modules/Text-CSV_XS-0.23/Text-CSV_XS-0.23.pod

上記のようなエラーを回避しつつ、CSVを取り込むコードとしては下記のような書き方がベターです。

参考リンク

http://d.hatena.ne.jp/spiritloose/20061110/1163126651

http://yanor.net/wiki/?Perl%2F%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%2FCSV%E5%85%A5%E5%87%BA%E5%8A%9B%20(Text-CSV)

http://rfs.jp/sb/perl/11/perl_text_csv_xs.html

おまけ:Perlでの金額表示の際にカンマを入れたいときは?(リンクのみ)

http://www.ksknet.net/perl/3.html

-Perl
-, , ,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

Perlの配列、ハッシュ系の処理(grepを中心に)

Perlの配列やハッシュで便利そうな処理をgrepを中心にいろいろ調べてみました。 Contents1 grepとは?2 grepを使った配列処理 基本3 grepを使った配列処理 ハッシュを含む多次 …

no image

Perlでの動的改行コード読み込みに関して+cp932ネタ

本日はperlにて改行コードを動的に読み込む方法です。 Contents1 動的な改行コードの判定・読み込み2 ShitfJISとcp932について 動的な改行コードの判定・読み込み 実務で古いMAC …

no image

Perlでの変数、配列、ハッシュに関して ~リファレンスなど~

こちらのブログでプログラミングを教えてるんですけど、プログラミングの基本といえば配列とオブジェクト指向だと思います。 もちろん、これ以外のことも大切ですが、初心者のうちはここを抑えておけばとりあえず何 …

no image

Perlの文字コードに関して その1

Perlの文字コードがらみに関して。 何となくやってきたのですが、せっかくなら整理したいのでまとめておきます。 なおPerl自体は5.8.1以降を前提にしたいと思います。 Contents1 参考資料 …

no image

Perlの文字コードに関して その2

前回のエントリーでPerlで文字列を扱う場合は内部文字列に変換しなくてはいけないことを学びました。 Contents1 内部文字列を使うわけ2 文字コードの変換 内部文字列を使うわけ ところで何のため …