Thread Suchen und Ersetzen mit merkwürdigem Ergebnis (6 answers)
Opened by jan99 at 2014-09-22 11:32

Raubtier
 2014-09-22 14:55
#177455 #177455
User since
2012-05-04
1057 Artikel
BenutzerIn

user image
Der Grundgedanke ist nicht schlecht (sofern du min und max vertauscht benutzt), denn man sollte auf das Minimum reduzieren, nicht auf das Maximum.

Allerdings ein sinnvolles Minimum, d.h. wir kennen deine Eingabedaten nicht und daher ist es nicht sinnvoll, über Inhalte von irgendwelchen uns unbekannten Dateien zu sprechen.

Entweder nutze __DATA__, sodass man das Problem per Copy+Paste nachvollziehen kann oder schreib gleich $content = "foobar __TOC__ foobaz", sodass man sofort sieht, welcher String behandelt werden soll.

Noch ein anderer Rat:
Quote
Code (perl): (dl )
1
2
3
4
5
 open (DATEI, "text.wiki_purge") or die $!;
    while(<DATEI>){
      $content = $content.$_;
    }
 close (DATEI);

Erstens: benutzte lexikalische Dateihandles, also solche mit $ davor.
Zweitens: Wenn du die Datei als einen String haben willst, ist es ineffizient, zeilenweise einzulesen. Entweder nimm z.B. read_file aus File::Slurp oder du setzt einfach $/ auf undef, z.B. so:
Code (perl): (dl )
1
2
3
4
5
my $content = do { 
  open my $datei, "<", "text.wiki_purge" or die $!;
  local $/; 
  <$datei> 
};

Last edited: 2014-09-22 14:57:31 +0200 (CEST)

View full thread Suchen und Ersetzen mit merkwürdigem Ergebnis