in reply to using hash to compare with string and print the string
But my code above doesn't print anything.
It's worse than that - your code doesn't compile:
$ perl -cw 11100018.pl Can't locate stricts.pm in @INC (you may need to install the stricts m +odule) (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 +/usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/ +perl5 /usr/share/perl5 .) at 11100018.pl line 3. BEGIN failed--compilation aborted at 11100018.pl line 3.
Here's something which is what I think you might want instead.
#!/usr/bin/env perl use strict; use warnings; my @array = qw/b d a c/; my %hash = ( a => 200, b => 100, c => 30, d => 40 ); for my $key (sort @array) { if ($hash{$key}) { print "array element: $key = $hash{$key} inside \%hash\n"; } }
|
|---|