Loose-Info.com

Last Update 2019/12/25


TOP - Perl - 配列

配列は複数のスカラー値を要素とする変数です。
配列に値を代入するにはリストを右辺に記述します。
コンマで区切ったリストの他に、シングルクォート内に空白で区切った文字列を記述する形式も可能です。

(例)
# 配列にリストで3個の値を代入 @test1 = ("a", "b", "c"); # 文字列を空白で区切りシングルクォートで囲む @test2 = 'dd ee ff'; # シングルクォートの代わりにqwを使用することも可能 @test3 = qw(gg hh ii); # qwは()以外の記号も使用できる @test4 = qw/jj kk ll/; print "@test1\n"; print "@test2\n"; print "@test3\n"; print "@test4\n";

実行結果
a b c dd ee ff gg hh ii jj kk ll

配列変数をスカラー変数に代入した場合は、配列の要素ではなく個数が代入されます。

(例)
@ary = ("a", "b", "c"); # スカラー変数に配列を代入 $s = @ary; print "$s\n";a # 文字列連結式に配列を加えても個数を返す # ダブルクォートの中に入れた場合は変数展開され、要素が文字列に結合される print @ary . "\n";

実行結果
3 3

配列の個々の要素は添え字を利用して指定します。

(例)
@test = ("a", "b", "c"); # 個々の要素を添え字で指定して":"で区切って表示 print "$test[0] : $test[1] : $test[2]\n";

実行結果
a : b : c d

配列変数の"@"を"$#"に変えた変数は、配列の最後尾の要素の添え字の値を示します。

(例)
@test = ("a", "b", "c"); # 配列の最後の要素の添え字の値を表示 print "$#test\n";

実行結果
2

配列は空のリストによってクリアできます。

(例)
@test = ("a", "b", "c"); print "@test\n"; # 3個の値を表示 @test = (); # 配列をクリア print "@test\n"; # 改行のみ表示

実行結果
a b c