sub word_count { my %h; $h{$_}++ for pop =~ /\w+/g; %h; } ## Example ## use Data::Dumper; my $s = 'fee fi fo fo fi fee fo fum fum bar baz'; my %h = word_count($s); print Dumper \%h;