我有2个哈希。Perl:合并哈希元素
my %hash1 = (
'1.3.6.1.2.1.7.1.0' => 'switch_stuff1',
'1.3.6.1.2.1.6.3.0' => 'switch_stuff4',
'1.3.6.1.2.1.6.5.0' => 'switch_stuff5',
'1.3.6.1.2.1.7.4.0' => 'switch_stuff2',
'1.3.6.1.2.1.6.2.0' => 'switch_stuff3'
);
my %hash2 = (
'1.3.6.1.2.1.7.1.0' => 125858,
'1.3.6.1.2.1.6.3.0' => 120000,
'1.3.6.1.2.1.6.5.0' => 23766,
'1.3.6.1.2.1.7.4.0' => 115336,
'1.3.6.1.2.1.6.2.0' => 200
);
正如你所看到的,两个哈希值的关键值是相同的。
我需要做的是从%hash1
采取值,并把它们作为键为%hash2
。
输出:
$VAR1 = {
'switch_stuff1' => 125858,
'switch_stuff4' => 120000,
'switch_stuff5' => 23766,
'switch_stuff2' => 115336,
'switch_stuff3' => 200
};
注:键的数目/在两个散列值对将始终是相同的。
或者,对我来说唯一重要的事情就是%hash1
是值。
'switch_stuff1',
'switch_stuff4',
'switch_stuff5',
'switch_stuff2',
'switch_stuff3'
所以,如果在我所描述的方式合并所述散列是不可能的,我可以代替转动%hash1
成只包含该值的数组。
任何人都可以帮助一个Perl新手出来或至少指向正确的方向吗?任何帮助将不胜感激。
谢谢。
谢谢你,这正是我需要的:) – user1300922 2012-04-17 14:21:29
@ user1300922不客气。 – TLP 2012-04-17 14:24:29