首页 > 解决方案 > 在 perl 中使用变量引用哈希键

问题描述

我正在尝试创建一个允许我使用变量访问哈希键/值的 Perl 脚本。

下面的代码是一个非常高级的脚本示例。有没有办法用变量引用散列的键?看起来 $hash_exmp{$temp_var} 没有被接受。

my %hash_exmp = (
    $key_1 => "file1",
    $key_2 => "file2",
    $key_3 => "file3",
);

for($i = 1; $i <= 3; $i++){
    for($j = 1; $j <= 3; $j++){     
        print $j;            
        $temp_var = "key_${i}";
        print $hash_exmp{$temp_var};
    };
};

标签: perlhashkey

解决方案


如果我正确理解你想要做什么,你想要这样的东西:

my %hash_exmp = (
    'key_1' => "file1",
    'key_2' => "file2",
    'key_3' => "file3",
);
for(my $i = 1; $i <= 3; $i++){
    print $hash_exmp{'key_'.$i} . "\n";
}

推荐阅读