my %reverse_hash; push{@{$reverse_hash{$hash{$_}}}, $_); foreach keys %hash; print(join(', ', @{$reverse_hash{$_)}), "\n"); foreach keys %reverse_hash;