如何从perl hashref中提取多个值?

如何从perl hashref中提取多个值?,perl,hashref,Perl,Hashref,如何将Perl hashref解包为多个命名标量变量 我见过它完成,但似乎无法使它工作 假设给定的$hashref,以及$arg1到$arg3的定义,下面是我的尝试: my $hashref = { arg1 => 'val1', arg2 => 'val2', arg3 => 'val3',}; my ($arg1,$arg2,$arg3) = @{%$hashref}[qw(arg1 arg2 arg3)]; 你需要这个 my ($arg1,$arg2,$arg3) =

如何将Perl hashref解包为多个命名标量变量

我见过它完成,但似乎无法使它工作

假设给定的$hashref,以及$arg1到$arg3的定义,下面是我的尝试:

my $hashref = { arg1 => 'val1', arg2 => 'val2', arg3 => 'val3',};
my ($arg1,$arg2,$arg3) = @{%$hashref}[qw(arg1 arg2 arg3)]; 
你需要这个

my ($arg1,$arg2,$arg3) = @{$hashref}{qw(arg1 arg2 arg3)};
这是一个针对散列ref的散列切片

您需要这个

my ($arg1,$arg2,$arg3) = @{$hashref}{qw(arg1 arg2 arg3)};

这是一个针对hash ref的hash切片

perfect。接受,完美。接受。显然我7年前问过同样的问题-这里显然我7年前问过同样的问题-这里