Stefan Muenz: RegExp: wer versteht replace?

Beitrag lesen

Hallo Peter

Könntest Du mir eines von Deinen zuposten: verstehen und ändern kann ich ganz prima ;-)

Ein Beispiel, um eine einzelne Datei zu bearbeiten:

=============================================
#! perl
$File = "/der/pfad/zur/datei.htm";
open(DAT,"<$File");
@lines = <DAT>;
foreach $line (@lines) {
$line =~ s/suchenach/ersetzedurch/g;
}
close(DAT);
open(DAT,">$File");
print DAT @lines;
close(DAT);

Und ein Beispiel, das *.htm in einem Verzeichnis bearbeitet:

=============================================
#! perl

$Dir = "/der Pfad/";
$Mask = ".*.htm";
opendir DIR, $Dir;
@entries = readdir(DIR);
closedir DIR;
foreach $entry (@entries) {    
    if($entry =~ /$Mask/) {
         push(@files,$entry);
        }
}
foreach $file (@files) {
  @lines = "";
  $pathfile = $Dir.$file;
  open(FILE,"<$pathfile");
  @lines = <FILE>;
  close(FILE);
  foreach $line (@lines) {
    $line =~ s/suchenach/ersetzedurch/g;
  }
  open(FILE,">$pathfile");
  print FILE @lines;
  close(FILE);
}

viele Gruesse
   Stefan Muenz