alex: Ersetzung in Dateien

Kann man in Dateien einzelne Zeilen auch ersetzen?
Wie könnte man es mit PERL realisieren, dass zum Beispiel der tag "<h1>Überschrift</h1>" durch "<h1>anderesThema</h1>" ersetzt wird. Ich möchte nicht die Datei neu schreiben.

  1. hi ho

    Kann man in Dateien einzelne Zeilen auch ersetzen?

    ja.

    Wie könnte man es mit PERL realisieren, dass zum Beispiel der tag "<h1>Überschrift</h1>" durch "<h1>anderesThema</h1>" ersetzt wird.
    Ich möchte nicht die Datei neu schreiben.

    wirst du auch nicht muessen, das macht ja der rechner fuer dich....

    Beispiel: (ganze Datei einlesen)

    open (REIN,"<$datei") or die "blala";
    $text=join("",<REIN>);
    close (REIN);

    $text=~s/<[Hh]1>alteueberschrift</[Hh]1>/<h1>neueUeberschrift</h1>/;

    open (RAUS,">$datei") or die "nochmabla";
    print RAUS $datei;
    close (RAUS);

    fertich.

    wenn du auf der platte was aendern willst _musst_ du auch auf der pladde schreiben.

    btw: es geht bestimmt auch effektiver (das beispiel ist nicht gerade der performance-renner...)

    cua

    n.d.p.

    1. und nochmal...

      open (RAUS,">$datei") or die "nochmabla";
      print RAUS $datei;

      heisst natuerlich
      print RAUS $text;

      cua

      n.d.p.

      1. Es klappt, danke für die Hilfe!