7
私は@arrayという配列を持っています。配列のどの値がハッシュのキーを形成しているかを知りたい、例えば%hash。 forループを使う以外に簡単な方法がありますか?この場合配列の値がPerlのハッシュのキーであるかどうかを調べる方法は?
例えば、
@array = qw (a b c);
%hash = (a => 1, b=> 2);
それだけ出力 '' と 'B' をすべきです。
私は@arrayという配列を持っています。配列のどの値がハッシュのキーを形成しているかを知りたい、例えば%hash。 forループを使う以外に簡単な方法がありますか?この場合配列の値がPerlのハッシュのキーであるかどうかを調べる方法は?
例えば、
@array = qw (a b c);
%hash = (a => 1, b=> 2);
それだけ出力 '' と 'B' をすべきです。
これはそれを行う必要があります。
my @array = qw(a b c) ;
my %hash = (a => 1 , b => 2) ;
my @result = grep { exists $hash{$_} } @array ;
あなたは '厳しい使用使用している場合は、いくつかの裸の単語の問題を持っている;'(とあなたがする必要があります)。 –
右。その配列にリテラル文字 'a'、 'b'、 'c'が含まれていると仮定した場合、配列は '@array =( 'a'、 'b'、 'c');または' @array = qw(abc); ' –
@JonathanLeffler:私はstrictを使用していますが、私はこの例に含めなかっただけです。 – Jordan