my %hash=(); open(DATEI, "<$dateiname") or die "Error in reading $dateiname: $!\n"; while(){ if(m/((\d+)\.(\d+)\.(\d+)\.(\d+))/) { $hash{$1}++; }else{ warn "Zeile $. in Dateiname enthält keine IP\n"; # In $. steht # immer die Nummer der zuletzt gelesenen # Zeile -- siehe perldoc perlvar } } close DATEI; for(keys %hash) { print "IP $_ tritt $hash{$_} mal auf.\n"; }