如何遍历包含Perl中哈希数组的哈希哈希?

时间:2016-04-12 17:39:02

标签: perl data-structures hash iteration

我以下面的格式获得查询输出。我需要获取itemthree的所有值。

在尝试了很多不同的事情后,我只能提取第一个值。我无法弄清楚如何在循环中运行它以获取itemthree元素中所有items的值。

这是我的数据转储

$VAR1 = {

    one => { msgSize => 103 },

    two => {
        items => [
            { itemOne => -1, itemthree => "AB_CD_EF", itemtwo => 0 },
            { itemOne => -1, itemthree => "XY_YZ_AB", itemtwo => 10 },
        ],
    },

    someOtherStuff => "abc",
}

1 个答案:

答案 0 :(得分:1)

假设你有一个哈希:

my @item3s;

for my $item (@{ $hash{two}{items} }){
    push @item3s, $item->{itemthree};
}

print "$_\n" for @item3s;

如果它实际上是哈希引用,请将$hash{two}{items}更改为$hash->{two}{items}