配列のハッシュ (HoA) があります。を使用して、この HoA の値を処理しています$arrayrefs
。$key
ただし、 に基づいてを取得する必要があります$arrayrefs
。
my %a = ( 1 => "ONE" ,
2 => "TWO" ,
3 => " Three", );
my %aa = ( 4 => [ 'ONE' , 'TWO', 'THREE'],
5 => ['one' , 'two', 'three'],
6 => ['more', 'dos', 'some'],
);
my @array = ('ONE' , 'TWO', 'THREE');
my $array_ref = \@array;
# returns the $key where the $value is 'ONE'
my ($any_match) = grep { $a{$_} eq 'ONE' } keys %a;
print $any_match."\n"; # this returns '1', as expected.. Good!
my ($match) = grep { $aa{$_} eq @$array_ref } keys %aa;
print $match."\n"; # <--- error: says that match is uninitialized
最後のprint
ステートメントでは、4 を返したいと思います。これを行う方法を知っている人はいますか?