将散列中的散列键与多个键匹配

时间:2014-02-11 08:49:07

标签: regex perl hash

我想从第二个键上使用正则表达式使用两个键的哈希值中获取值。这就是我所拥有的:

use List::Util qw<first>;

$key1 = "key";

my $value = $hash{$key1}{ ( first { m/teen/ } keys %hash ) || '' };

1 个答案:

答案 0 :(得分:1)

use warnings;
use strict; 

my %hash = ( 'key1' => 'result',
             'key2' => 'wrong');

foreach my $key (keys %hash) { 
    print "$key, $hash{$key}\n" if $hash{$key} =~ /result/;
}

打印:

key1, result

编辑 - 乍一看,虽然我仍然对您的代码和问题感到困惑,但似乎您想要找到与特定密钥相关联的值,在这种情况下'key1'

print "key1 = $hash{'key1'}\n";

打印:

key1 = result