ネストされたハッシュを使用するデータ構造内のアイテムを反復処理しようとしています。そのために、そこにあるキーを確認したかったのです。
以下は私が試したことです。しかし、私はエラーが発生しています
my %tgs = (
'articles' => {
'vim' => 'about vim',
'awk' => 'about awk',
'sed' => 'about sed'
},
'ebooks' => {
'linux 101' => 'about linux',
}
);
foreach my $k (keys %tgs){
print $k;
print "\n";
foreach my $k2 (keys %$tgs{$k}){ #<-----this is where perl is having a problem
print $k2;
print "\n";
}
}
syntax error at PATH line #, near "$tgs{"
syntax error at PATH line #, near "}"
Execution of PATH aborted due to compilation errors.
私のアプローチの何が問題になっていますか?$tgs{$k} はハッシュの参照を返すため、for each ループで参照解除できたのですが、できないのでしょうか?