「顧客パッケージ」を含むテキスト ファイルを検索するソースとして CSV ファイルから情報を取得するプログラムに取り組んでいます。一部のエントリでのみ奇数のカウントが発生しており、カウントが重複している原因がわかりません。誰かが私のコードを見て、私のロジック/構文がオフになっているかどうかを教えてもらえますか? (おそらくそうです)。私が達成しようとしているのは、csv ファイル (packageid、package_description) 内のエントリのテキスト ファイル内の合計出現回数を数えることだけです。
助けてくれてありがとう!私はここで気が狂います。
#!/usr/bin/perl
use strict;
use Text::CSV;
# Variables already declared in the other PL file ** Remove if consolidating **
my $file2 = 'master_plist.csv';
my $csv2 = Text::CSV->new(); # Create a Text::CSV object
open (CSV2, "<", $file2) or die $!; #open CSV file for parsing
while (<CSV2>) {
if ($csv2->parse($_)) {
my @columns2 = $csv2->fields(); # Parse CSV and load into an array for each row.
my $packID = $columns2[0];
my $packDESC = $columns2[1];
my $val = 'customer_packages_report.txt';
chomp ($val);
my $cnt=0;
open (HNDL, "$val") || die "wrong filename";
while ($val = <HNDL>)
{
while ($val =~ /$packID - $packDESC/ig)
{
$cnt++;
}
}
#if ($packDESC =~ /\(/g) {
# $packDESC =~ s/\(/\(/g;
#}
print "Total iterations of $packDESC: $cnt\n";
close (HNDL);
# End original code
} # Close IF
} # Close WHILE
close CSV;