如何查找数组的值是否是Perl中哈希的键?

时间:2012-06-08 18:47:22

标签: arrays perl hash

我有一个数组说@array。我想知道数组的哪些值构成哈希的键,比如%hash。除了使用for循环之外,还有一种简单的方法吗?

如,

 @array = qw (a b c);   
 %hash = ( a => 1, b=> 2 );    

在这种情况下,它应该输出'a'和'b'。

1 个答案:

答案 0 :(得分:17)

这应该这样做:

my @array = qw(a b c) ;
my %hash = ( a => 1 , b => 2 ) ;

my @result = grep { exists $hash{$_} } @array ;