my @oldlist = ( 4, 7, 8 ); #### my @oldlist = ( 4, 7, 8 ); my @newlist = map($_ + 42, @oldlist); #### my $names = "freddy fred bill jock kevin andrew kevin kevin jock"; #### kevin : 3 jock : 2 andrew : 1 bill : 1 fred : 1 freddy : 1 #### my $names = "freddy fred bill jock kevin andrew kevin kevin jock"; my %freq; for my $name (split ' ', $names) { ++$freq{$name}; } for my $k (sort { $freq{$b} <=> $freq{$a} || $a cmp $b } keys %freq) { printf "%-10s: %d\n", $k, $freq{$k}; } #### my $infile = 'in.tmp'; my $outfile = 'out.tmp'; #### my $infile = 'in.tmp'; my $outfile = 'out.tmp'; open(my $fhin, '<', $infile) or die "error: open '$infile': $!"; open(my $fhout, '>', $outfile) or die "error: open '$outfile': $!"; while (my $line = <$fhin>) { $line =~ s/\bPeking\b/Beijing/g; print $fhout $line; } close($fhin); close($fhout);