foreach $term (@inputs) {
while (<FILE>) {
to
while (<FILE>) {
foreach $term (@inputs) {
I'm going to add a few unrelated points:
Always: use warnings;
use strict;
In fact, you probably have a bug of "filenumbers2" vs. "numbers2" that use strict would catch.
Instead of push @before, split(' ', $`);
you should have @before = split(' ', $`);
Then you don't need the awkward @before = undef; The same holds for @after, too.
Really it should be my @before = split /\s+/, $`;
The three lines@before = reverse(@before);
@before = splice(@before, 0, 7);
@before = reverse(@before);
are better written as splice(@before, 0, -7);. And this code: if(exists $results{$number}) {
$existing = $results{$number};
$results{$number} = $existing . "... @before" . "<b>$&</b>" . "@afte
+r ...";
} else {
$results{$number} = "... @before" . "<b>$&</b>" . "@after ";
}
can be written as $results{$number} .= "... @before" . "<b>$&</b>" . "@after ";
|