私は次のコードを作成して、ファイルを読み取り、スラープし、IP アドレスを識別し、ハッシュ構造を使用して各アドレスの出現回数を追跡しました。問題は、キーが正規表現から一致した IP アドレスではなく、IP アドレスが表示される行全体であることです。これを修正するにはどうすればよいですか? (問題は、丸呑みが行ごとに行われるという事実に関係していると思います)
%ipcount;
@fileslurp = <FH>;
foreach(@fileslurp){
if($_ =~ m/(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/){
$ipcount{$_}++;
}
}
$numIP = scalar keys %ipcount;
print "Number of unique IP: $numIP \n";
foreach $ipaddress (sort { $ipcount{b} <=> $ipcount{a} } keys %ipcount){
print "$ipaddress: $ipcount{$ipaddress} \n";
}