use 5.010; use strict; use warnings; use autodie; open my $kwh, "keywords.txt"; while (<$kwh>) { chomp; $keyword{$_}++ for split /,/; } close $kwh; open my $fh, "Skypelogs.txt"; while (<$fh>) { print if grep {$keywords{$_}} /(\pL(?:\S*\pL)?)/g; } close $fh;