コマンドラインファイルから取り出し、すべてのファイルから単語の出現数を出力する小さなプログラムを作成しようとしています。最初の部分は、単語の出現の数を見つける、うまくいくようです。Perl:単語が出現するファイルを出力する
しかし、私は第2の部分、つまりどのファイル(ファイル名)に単語があるかを見つけることに苦労しています。私は単語を格納する配列を使用することを考えていますが、これが最善の方法か、それとも最善の方法か分かりません。 これは、これまで私が持っているコードで、単語が与えられたファイル(複数可)に発生した回数をカウント部分のために働くようだ:
use strict;
use warnings;
my %count;
while (<>) {
my $casefoldstr = lc $_;
foreach my $str ($casefoldstr =~ /\w+/g) {
$count{$str}++;
}
}
foreach my $str (sort keys %count) {
printf "$str $count{$str}:\n";
}
コードに字下げを修正しました。一見無作為にインデントされたコードを何人が作成しようとしているのか、私は絶えず驚いています! –
'perltidy -pbp' ftw! – Sobrique
あなたが望むような出力を見せてくれれば多分助けになるでしょう。 – Borodin