my $VAR1 = { '99155' => { 'PR' => { state_name => 'Puerto Rico', county_names_all => 'Adjuntas|Utuado', }, }, }; my $v0 = $VAR1; while ( my ($k1,$v1) = each %$v0 ) { while ( my ($k2,$v2) = each %$v1 ) { while ( my ($k3,$v3) = each %$v2 ) { print "\$VAR1->{$k1}{$k2}{$k3} => '$v3'\n" } } }