in reply to How to get Keys from hash having same value?
Hi isha,
If you want to manipulate the simple hash, then your hash will be like this,
my %myhash = ( 1 => 'a', 2=> 'b', 3=> 'a', 4=>'c');To manipulate this simple hash, you can do like
use strict; my %myhash = ( 1 => 'a', 2=> 'b', 3=> 'a', 4=>'c'); for my $key (keys %myhash){ if($myhash{$key} eq 'a'){ print "KEY:$key\n"; } }
But you created the hash as
my %myhash = { 1 => 'a', 2=> 'b', 3=> 'a', 4=>'c'};
which is anonymous hash reference. To manipulate this hash reference, then you can do like
use strict; my $myhash = { 1 => 'a', 2=> 'b', 3=> 'a', 4=>'c'}; for my $key (keys %{$myhash}){ if(${$myhash}{$key} eq 'a'){ print "KEY:$key\n"; } }
Punitha
In Section
Seekers of Perl Wisdom