リストからある条件と一致した値を取出す - Perl

※初出の日時が不明のため公開日は仮の日付です

あるリストから、希望する条件に一致した値だけを取り出したい場合がある。for,while,foreachなどのループを使う方法以外に、効率の良いやり方が知りたい。

サンプル

;#
;# リストからある条件と一致した値を取出す
;#

@array = ('apple', 'orange', 'pineapple');

#-- "apple"が含まれる物を表示する --#
@result = grep(/apple/, @array);

#-- 結果表示 --#
foreach(@result){
print ;
print "\n";
}

実行結果

apple
pineapple

grepは、ブロックを用いることもできる(grep { /apple/ }, @list)。