在Perl中,如何从散列哈希中访问元素

时间:2011-05-05 11:01:24

标签: perl

在这个例子中,我想阅读$ref中的字母“d”:

$ref={a,b,c,{d,e}}

2 个答案:

答案 0 :(得分:4)

# Start using these!
use strict;
use warnings;

# A more standard way of writing your example.
my $ref = { a => "b", c => { d => "e", f => "g" } };

# How to access elements within the structure.
my $inner = $ref->{c};
print $_, "\n" for
    $inner->{d},   # e
    keys %$inner,  # d f
    $ref->{c}{d},  # e    (directly, without using intermediate variable).
;

有关详细信息,请参阅Perl Data Structures Cookbook

答案 1 :(得分:2)

print keys %{$ref->{c}};将适用于该特定(可怕)示例。它可能会或可能不会解决您的问题,因为我们不知道问题究竟是什么。