Perlで、ある要素が配列(リスト)の中に存在するかを調べる方法

use strict;
use warnings;

my @list = qw(apple mango orange);
my $item = 'orange';

if (in_array($item, @list)) {
    print "yes\n";
} else {
    print "no\n";
}

sub in_array {
    my $item = shift;
    my @list = @_;

    for (@list) {
        return 1 if $_ eq $item;
    }

    return 0;
}

# 実行結果:'yes'
判定文を1行で書くこともできます。↓
use strict;
use warnings;

my @list = qw(apple mango orange);
my $item = 'orange';

if (grep {$_ eq $item} @list) {
    print "yes\n";
} else {
    print "no\n";
}

# 実行結果:'yes'


※ 高校野球の女子マネージャは内容と関係ありません><
カテゴリ: