use strict; use warnings; my %daten; $daten{feld1}{Wert1} = "Inhalt 1 1"; $daten{feld1}{Wert2} = "Inhalt 1 2"; $daten{feld1}{Wert3} = "Inhalt 1 3"; $daten{feld2}{Wert1} = "Inhalt 2 1"; $daten{feld2}{Wert2} = "Inhalt 2 2"; $daten{feld2}{Wert3} = "Inhalt 2 3"; $daten{feld3}{Wert1} = "Inhalt 3 1"; $daten{feld3}{Wert2} = "Inhalt 3 2"; $daten{feld3}{Wert3} = "Inhalt 3 3"; for my $Name1 (keys(%daten)){ my $Wert1=$daten{$Name1}; print "-> $Name1\n"; if(ref($Wert1) eq 'HASH'){ for my $Name2 (keys(%{$Wert1})) { my $Wert2 = $Wert1->{$Name2}; print "--> $Name2, $Wert2\n"; } } }