В Perl как получить доступ к элементу из хеша - PullRequest
1 голос
/ 05 мая 2011

в этом примере я хочу прочитать букву "d" из $ref:

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

Ответы [ 2 ]

4 голосов
/ 05 мая 2011
# 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 .

2 голосов
/ 05 мая 2011

print keys %{$ref->{c}}; будет работать для этого конкретного (ужасного) примера.Это может или не может решить вашу проблему, так как мы не знаем, в чем проблема на самом деле.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...