Show us your code. As suggested \b is probably the "answer", but I suspect there is more going on here and that there may be more fundamental stuff you could use some help with.
At the very least show us the regex you are using at the moment. It may be that something like the following is a better solution:
use strict;
use warnings;
my @userWords = qw(kicking kick);
my %words = map {chomp; lc $_ => 0} split ' ', <DATA>;
exists $words{lc $_} && $words{$_} >= 0 ? ++$words{$_} : --$words{$_}
for @userWords;
for (sort keys %words) {
next if ! $words{$_};
print "not " if $words{$_} < 0;
print "found $_\n";
}
__DATA__
George Best is Alive and Kicking
Prints:
not found kick
found kicking
DWIM is Perl's answer to Gödel
|