配列,リストからある条件と一致した値を取出す (Perl, grep)
あるリストから、希望する条件に一致した値だけを取り出したい場合がある。for,while,foreachなどのループを使う方法以外に、効率の良いやり方が知りたい。
;#
;# リストからある条件と一致した値を取出す
;#
@array = ('apple', 'orange', 'pineapple');
#-- "apple"が含まれる物を表示する --#
@result = grep(/apple/, @array);
#-- 結果表示 --#
foreach(@result){
print ;
print "\n";
}
__END__
○実行結果
apple
pineapple
grepは、ブロックを用いることもできる(grep { /apple/ }, @list)。

