リスト
リストとは、スカラーの集合に順序を付けて並べたもの。
全て数値あるいは文字列でなければならない、ということはなく、
それらを組み合わせて保持することもできる。
リストリテラル
プログラム中でリストを表すには以下のように書く。
() # 空のリスト (1, 2, 3); ('a', 'b', 'c'); (1, 'b', 2, 'd', ); # 最後のコンマは無視される
リストの要素には式を使うこともできる。
$a = 3; ($a * 2, $a * 5); # (6, 15)
範囲演算子(..)は、1ずつ増加する値のリストを生成する。
これを使えば、連番のリストが簡潔に書ける。
($a..$b); # $aから$bまで、1ずつ増加する値のリスト (1..100); # 1〜100までの100個の整数のリスト (5..1) # 空リスト 右の方が大きくないと駄目 (1.5..5.6) # (1, 2, 3, 4, 5) 小数は切り捨てられる (3, 5..8, 10) # (3, 5, 6, 7, 8, 10)と同じ
qwショートカット
qwショートカットを使うと、各要素をシングルクォートで
囲む手間が省ける。
('a', 'b', 'c'); # これと qw/ a b c /; # これは同じ
各要素は、コンマではなく空白文字(スペース、タブ、改行文字)
などで区切られる。
そして各要素は、シングルクォートで囲まれたものとして扱われる。
なので、\nや$hogeなどは使えない。
要素にデリミタ(この場合は/)と同じ文字を入れたい場合は、
その前に、逆スラッシュを置く。
qw/ \/usr\bin\/perl \/home\/hoge\/hoge.txt /;
ただ、デリミタには任意の文字を選べるので、この方がわかりやすい。
qw{ /usr/bin/perl /home/hoge/hoge.txt }