my @pat_array = split('@@@', $InListOfPatterns); my $num_pat = @pat_array; my @match_count; for( my $i = 0; $i < $num_pat; $i = $i + 1 ) { $match_count[$i] = 0; } open LOG_READ,'<',"$InLogFilePath" || die "can not open file :$!"; while () { chomp; if ( $. > $InStartLineNumber) { for(my $j = 0; $j < $num_pat; $j = $j + 1 ) { if ($_ =~ m/\Q$pat_array[$j]\E/){ $match_count[$j] = ($match_count[$j] + 1); }}}} close (LOG_READ);