考虑以下:
use strict;
use Data::Dumper;
my $hash={['one','two']=>[1,2]};
print Dumper($hash);
=for comment
prints....
$VAR1 = {
'ARRAY(0x35358)' => [
1,
2
]
};
=cut
Run Code Online (Sandbox Code Playgroud)
作为替代方案,哈希中的键可以被构造为"一个\ ttwo",然后我可以基于制表符分隔符(在程序的后半部分,同时重置数据)来分离键的元素.
关于如何将密钥存储为数组引用的任何建议?
不,普通(非tied)Perl哈希只能将字符串作为键.如果用作散列键,其他任何东西 - arrayrefs,对象等等都会被字符串化,这使得散列键不能用作你最初拥有的非字符串.
Hash :: MultiKey使用魔法tie来回避这个限制.