Thread Regex ausdrücke und bestimmte Zeile machen Probleme (12 answers)
Opened by orlando2016 at 2015-04-29 19:49

orlando2016
 2015-04-29 19:49
#180876 #180876
User since
2015-04-27
5 Artikel
BenutzerIn
[default_avatar]
Hallo, wer kann mir einen guten Tipp geben? Ich habe etwas programmiert, das teilweise funktioniert.
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
open (FILE, '<', 'Beispiel_Liste.txt') or die "$!";

 open(OUT,"> Sortiert.txt")
 or die "Fehler beim Öffnen von 'Sortiert.d': $!\n";

while($_ = <FILE>)
{ 
  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
}

Beispiel_Liste.txt:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
*Verein DJK-Ort

Fabian
Geburtuhrzeit 2013.07.03.15.19.28
Gewicht...
HÖhe....
Seit...

Marion
Geburtuhrzeit 2013.07.03.15.20.26
Gewicht...
HÖhe....
Seit...

Hajo
Geburtuhrzeit 1999.07.31.21.29.53
Gewicht...
HÖhe....
Seit...
weitere Info..

Heino
Geburtuhrzeit 1999.07.31.21.30.36
Bekannt nur: Seit....


*ENDE


Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
Ziel ist in der Datei Sortiert.txt:
Hajo
Geburtuhrzeit 1999.07.31.21.29.53
Gewicht...
HÖhe....
Seit...
weitere Info..

Heino
Geburtuhrzeit 1999.07.31.21.30.36
Bekannt nur: Seit....


modedit Editiert von GwenDragon: Code formatiert
Last edited: 2015-04-29 19:51:53 +0200 (CEST)

View full thread Regex ausdrücke und bestimmte Zeile machen Probleme