open (FILE, '<', 'Beispiel_Liste.txt') or die "$!"; open(OUT,"> Sortiert.txt") or die "Fehler beim Öffnen von 'Sortiert.d': $!\n"; while($_ = ) { if($_ =~ /Geburtuhrzeit [0-9].[0-9].*[0-9]*.*[0-9]*.*[0-9]*.*[0-9]*/) { my @zeile = split(/\s|\.|\//, $_); $year = $zeile[1]; $month = $zeile[2]; $day = $zeile[3]; $hour = $zeile[4]; $minute = $zeile[5]; $second = $zeile[6]; # print "$_"; if (($year == 1999) && ($month == 07) && ($day ==31)) { $gefunden = $.; print "Gefunden, die Zeilennummer ist $gefunden \n";# Kontrolle print $_; $startwert = $gefunden-1; #Namen übernehmen! } } if (($_ =~ /^$/)&&($gefunden))# Ab hier habe ich ein Problem, es soll zur nächste Blank-Line suchen und nicht den letzten Leerzeile! { $zeilennr=$.; print "empty line, $zeilennr \n"; foreach ($startwert; $startwert < $zeilennr ; $startwert ++) { print "Der Text wird uebernehmen. \n"; print OUT ($_); # Problem, die Zeile übernimmt er leider nicht in die Datei! print "$. $_\n"; # Kontrolle } } # Ende der while schleife }