Perl小技集
2017年9月24日 (日) 11:09時点におけるimported>Webmasterによる版
プログラミングをしばらくしていないと、いろいろ忘れるのでPerlで使用出来る個人的に覚えておきたい小技集を備忘録としてまとめました
言葉の理解
配列とリスト
同じ者だと思っていました。
言葉的な違いで、配列は変数
であり、リストは表記法
ということらしい
リストは値が並んでいるのをリストといいます
# リスト
('a', 'b', 'c', 'd')
配列は変数
なので、配列@array
にリストの'a', 'b', 'c', 'd'
を代入しているという言い方になるのでしょうか、意味的にはそんな言葉を使うのが良いのかも知れません。
# 配列への代入
my @array = ('a', 'b', 'c', 'd');
配列関係
値の表示・参照
配列の各要素には、添え字を指定することで、以下のようにしてアクセスすることができます
#直接指定することで値を表示する。ここでは$make_unionというリストに入っている[0]番目の要素を表示する
print $make_union[0];
#encode文を挟む場合は以下の様な表現となる
print encode('cp932',$make_union[0]);
配列一覧出力
for
やwhile
で一つずつ参照して表示させても良いですが、以下のワンライナーで表示できます
要素の1つずつ改行を付けて出力します
#joinで1行毎に改行を入れて出力する
print join("\n", @make_union);
#encode文を挟む場合は以下の様な表現となる
print encode('cp932',join("\n", @make_union));
配列最後の要素を出力する
$#変数名
で参照できます
#これで一番最後の配列に入っている値を表示できる
print "$array[$#_array]\n";
配列の個数を表示する
配列の個数は、左辺のスカラー変数に代入することで数でてきます。代入が無いと要素そのものが出力されます。
my @chars = qw/z z a b c d e f/;
#配列の個数のスカラー変数に代入
my $num = @chars;
#z z a b c d e fが表示される
print "@chars\n";
#要素数「8」が表示される
print "$num\n";