skillup

技術ブログ

Perl

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

投稿日:

昨日書いたgrepに続き、mapについて調べたことを書いてみました。

mapとは?

grepが「抽出」を行うことに対して、mapは「変換」を行います。

基本的な変換の処理は

変換した配列、ハッシュ = map 条件式 配列

のようになります。

mapを使った配列処理 基本

一番簡単なのは下記のようなプログラムでしょう。

このようにforで展開する処理と基本的には一緒で、より短く表現することができます。

ハッシュを使い、下記のようなコードを書くこともできます。

mapを使った配列、ハッシュ処理 ハッシュを含む多次元配列への応用

例よって実務で一番多い多次元ハッシュタイプの処理での応用例です。

ハッシュの展開

mapの使用例ではないのですが、ハッシュの出力をかいておきます。

eachというのはかなり有名なようですが、知らない方もいるようですね。

知っておくとできることの幅が広がってよいと思います。

参考リンク

http://d.hatena.ne.jp/kasei_san/20081121/p1

http://maruta.be/intfloat_staff/157

http://perl-users.jp/articles/advent-calendar/2008/16.html

http://tweeeety.hateblo.jp/entry/2015/02/16/174445

http://d.hatena.ne.jp/perlcodesample/20100118/1264257759

-Perl
-, ,

執筆者:


comment

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

関連記事

no image

Perl整形ツール Perl Tidy

PHPでコード整形ツールを使いましたが、Perlでも整形ツールがあったのでちょっとメモ。 Perl::Tidyというモジュールです。 公式 http://perltidy.sourceforge.ne …

no image

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

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

no image

Perlにおけるオブジェクト指向

今回はPerlのオブジェクト指向について。 Javaほどの厳密性はありませんが、Perlでもオブジェクト指向的なプログラミングを行うことは可能です。 今回はPerlのオブジェクト指向をさらっと基本的な …

no image

Perlでのデータベース差分チェックツール

Perlにてデータベースの差分が発生したときに簡単に差分を埋めるためのSQLを書くライブラリがあったので紹介。 ライブラリがない場合、cpan SQL::Translator でまずライブラリをCPA …

no image

Vagarant+Eclipse(Perl)での作業環境構築

現在の案件でPerlの改修があるんですが、windowsだとモジュールの依存関係でうまくコンパイルできなかったりといろいろとトラブルが起こったんで、今はやりの仮想環境でやることに。 まだ完ぺきではない …