我有一个包含哈希引用的字符串,例如:
my $string = "HASH(0x5602d43a7648)";
如何从此引用访问哈希并打印出其值和键?
答案 0 :(得分:2)
你不能,为时已晚。
如果变量包含引用,则可以取消引用,
my $hash_ref = { a => 42 };
my %hash = %{ $hash_ref };
但是一旦将其字符串化,就无法进行:
my $string = "$hash_ref";
要在散列中创建散列或“哈希散列(HoH)”,请使用引用,而不是字符串:
my %hash = ( key1 => { subkey1 => 'val1',
subkey2 => 'val2' },
key2 => { subkey3 => 'val3' } );
print $hash{key1}{subkey2}, "\n"; # val2