Talán ilyesmit lehetne próbálni:
my %h3= ('KEY1'=>[[111,112],[121,122]], 'KEY2'=>[[211,212],[221,222]]);
my ($k, $i, $j);
for ($k=1; $k<=2; ++$k) {
for ($i=0; $i<2; ++$i) {
for ($j=0; $j<2; ++$j) {
printf "h3{KEY%d}[%d][%d]=%d\n", $k, $i, $j, ${$h3{'KEY'.$k}}[$i][$j];
}
}
}
Kimente:
h3{KEY1}[0][0]=111
h3{KEY1}[0][1]=112
h3{KEY1}[1][0]=121
h3{KEY1}[1][1]=122
h3{KEY2}[0][0]=211
h3{KEY2}[0][1]=212
h3{KEY2}[1][0]=221
h3{KEY2}[1][1]=222
Szerk: csak a kavarás kedvéért csináltam még pár referenciát és tömböt.
my $h3_KEY1REF= $h3{'KEY1'};
print 'h3_KEY1REF=',$h3_KEY1REF,"\n";
my @h3_KEY1= @{$h3{'KEY1'}};
print 'h3_KEY1=',@h3_KEY1,"\n";
my $h3_KEY1_0_REF= ${$h3{'KEY1'}}[0];
print 'h3_KEY1_0_REF=',$h3_KEY1_0_REF,"\n";
my @h3_KEY1_0= @{@{$h3{'KEY1'}}[0]};
print 'h3_KEY1_0=',@h3_KEY1_0,"\n";
Kimenete:
h3=KEY1ARRAY(0x7fffd22ffa28)KEY2ARRAY(0x7fffd2316c60)
h3_KEY1REF=ARRAY(0x7fffd22ffa28)
h3_KEY1=ARRAY(0x7fffd2300688)ARRAY(0x7fffd2300550)
h3_KEY1_0_REF=ARRAY(0x7fffd2300688)
h3_KEY1_0=111112