skillup

技術ブログ

Perl

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

投稿日:2015年12月10日 更新日:

こちらのブログでプログラミングを教えてるんですけど、プログラミングの基本といえば配列とオブジェクト指向だと思います。

もちろん、これ以外のことも大切ですが、初心者のうちはここを抑えておけばとりあえず何とかプログラムは書けるようになります。

最近はPerlをやることになりましたので、今回はPerlの配列について学習します。※配列といってもハッシュも含みます。

Perlでの変数、配列、ハッシュの定義

基本的な変数、配列、ハッシュの定義の仕方です。

特段解説する必要もないかもしれないですが、Perlでの各データの定義方法です。

リファレンスとデリファレンス

昔はよくわからなかったのがこれです。

リファレンスとはつまり参照のことですね。

データそのものではなく、データを指しているもののことです。

Perlではこれを表現するのに、\をつけるだけで大丈夫です。

出力してみるとわかるんですが、データのタイプ(SCALAR,ARRAY)などの後に、意味不明な番号がかかれていますね。

これがメモリのアドレスを指しているわけです。

また各要素にアクセスする場合は→を使ってアクセスすることができます。

ちなみにここからデータ自体を復元することをデリファレンスといいます。

復元の仕方は上記の通りです。元のデータの演算子を書けばいいだけですね。

無名配列と無名ハッシュ、ハッシュを含んだ配列の定義

実務ではこのリファレンスを使ってデータをやり取りすることが非常におおいですね。

そのため実務でよく出てくる無名配列の定義の仕方や、無名ハッシュなどよく使われるものを下記に書いておきます。

なお、「業務に役立つPerl」を参考にしました。

-Perl
-,

執筆者:


comment

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

関連記事

no image

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

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

no image

Basic認証のあるページの情報の取得

ひさびさにPHPネタです。 PHPではWEBページを保存するときにfile_get_contents(url)と書いてあげるとHTMLデータを取得できます。 が、Basic認証などのページは当然fal …

no image

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

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

no image

Perlでの配列処理

最近Perlでの開発をやっているのでそこでのメモなどを書きます。 今まであまりやったことがなかったんですけど、やはり文字列や配列関連の処理をどうやるのかでいろいろと迷ったりします。 が、もともとテキス …

no image

Perlの文字コードについて その3

実際のPerlでの文字処理に関しては以前の記事でも書いたように下記の原則を守ればOKです。  原則1 外部から入力された文字列はデコードして内部文字列に変換する  原則2 外部へ出力する文字列はエンコ …