在一个数组中合并两个索引,在另一个数组中合并值

时间:2014-12-22 21:36:31

标签: arrays perl merge key associative

如何以关联方式将两个数组合并在一起;一个数组具有键列名称,另一个数组具有值?

我试图将一个数组推到另一个数组上,只将它们作为列表附加,不将它们关联在一起。任何帮助将不胜感激。谢谢!

my @var1 = {'COL1', 'COL2', 'COL3'};
my @var2 = {  '1' ,  '2'  , '3'   };

...

new array %var3 = {'COL1' => '1', 'COL2' => '2', 'COL3' => '3'} 

2 个答案:

答案 0 :(得分:3)

使用哈希切片:

my %var3;
@var3{ @var1 } = @var2;

答案 1 :(得分:3)

首先是一些评论。数组使用简单的括号()

您可以使用哈希切片构建哈希

my @keys = ('COL1', 'COL2', 'COL3');
my @values = ( '1' , '2' , '3' );

my %hash ;
@hash{@keys} = @values ;

这会提供您想要的所需哈希值。