Perl入門ゼミ

テキスト処理、Linuxサーバー管理、Web開発ならPerl
  1. Perl
  2. 演算子
  3. here

配列スライス

配列スライスを使うと、配列から要素番号を指定して複数の要素を取り出すことができます。

# 配列スライス
my @values = @array[0, 3, 5];

配列から要素番号が1と3の要素を取得するサンプルです。

# 複数の要素を取得
my @nums = ('a', 'b', 'c', 'd');
my @choice = @nums[1, 3];

結果は、@numsが('a', 'b', 'c', 'd')の場合に@choiceは('b', 'd')になります。

配列のリファレンスに対して配列スライスを行うには次のようにできます。

# 配列のリファレンスに対しての配列スライス
my $nums = ['a', 'b', 'c', 'd'];
my @choice = @$nums[1, 3];

配列スライスを左辺値として使う

配列スライスを左辺値として使用すると指定した要素番号の複数の値に代入ができます。

# 複配列スライスを左辺値として使う
my @nums = ('a', 'b', 'c', 'd');
@nums[1, 3] = ('e', 'f');

ハッシュスライス

配列スライスとよく似た機能にハッシュスライスがあります。ハッシュのキーを指定して、複数の値を取得することができます。

my @math_score_slice = @math_scores{'Aiko', 'Kenta'};