配列@a
にハッシュのハッシュを設定したので、次のようになります。
$a[0]{'keyA'}{'keyB'}
私に価値を与えます。
配列内の要素 (たとえば index 0
) を選択し、ハッシュ内のすべての要素を次のようにアルファベット順にループしたいと思います。
for my $keyA (sort keys $a[0]) {
for my $keyB (sort keys $a[0]{$keyA}) {
print $a[0]{$keyA}{$keyB};
}
}
理由はわかりませんが、Perl はループを完全にスキップします。これは、Eclipse デバッガーを使用してステップ実行するときに確認できます。
私の配列の data::dump:
$VAR1 = [
{},
{
'Z' => { 'Z' => 1 },
'G' => { '' => 1 },
},
undef,
{
'A' => { 'A03' => 1, 'A02' => 1 },
'G' => { 'G29' => 3 },
'Z' => { 'Z' => 1 },
'F' => { 'F24' => 2, 'F27' => 1 },
},
{
'A' => { 'A02' => 2 },
'O' => { 'O62' => 1 },
'B' => { 'B05' => 1 },
},
];
どんな助けでも大歓迎です。