Thomas J.: Suchen & Ersetzen für Fortgeschrittene

Moin allerseits

Ich stehe vor folgendem Problem:
Gegeben ist ein endlos langer Text mit etwas mehr als 100 Bildern.
Der Text ist bereits thematisch auf mehrere html-Seiten aufgeteilt, die Bilder haben identische Abmessungen sind von 001.jpg bis 112.jpg durchnummeriert.
Nun hat der Autor glücklicherweise an den Stellen, wo die Bilder hingehören ein * eingefügt, was bei mir dann als <p>*</p> erscheint.
Damit kann ich schon mal ganz einfach <img scr="" ...> an den passenden Stellen einfügen.
Aufgrund meiner angeborenen Abneigung gegen stupide Fließbandarbeit wäre die Premiumlösung natürlich, beim Suchen&Ersetzen gleich noch einen Zähler mitzuschleifen, der den Dateinamen nach jedem Ersetzen um 1 hochzählt.

Für derartige Arbeiten verwende ich in der Regel jedit. Nur mit Regulären Ausdrücken allein komme nicht zum Ziel. Mit der BeanShell habe ich zwar etwas herumprobiert, komme damit aber nicht wirklich zurecht.

Vorschläge, Ideen, Hinweise?

Thomas J.

  1. 你好 Thomas,

    Aufgrund meiner angeborenen Abneigung gegen stupide Fließbandarbeit wäre
    die Premiumlösung natürlich, beim Suchen&Ersetzen gleich noch einen Zähler
    mitzuschleifen, der den Dateinamen nach jedem Ersetzen um 1 hochzählt.

    Ein Perl-Einzeiler:

    perl -pi -e 's!<p>\*</p>!"<p><img src="img".sprintf("%03d",$i++)."">"!eg' datei.html

    再见,
    CK

    --
    Fatal! Ich kann kein Reserve-Offizier mehr sein!
    1. Moin

      Ein Perl-Einzeiler:

      Ups, Senkfuß.

      Hatte ich schon erwähnt, daß ich von Perl keine Ahnung habe?
      Egal. Ich werde mal probieren, ob ich jedit dazu überreden kann. Wird schon irgendwie gutgehen.

      Thomas J.

      1. 你好 Thomas,

        Hatte ich schon erwähnt, daß ich von Perl keine Ahnung habe?

        Ist doch egal -- installiere dir ActiveState Perl und fuehre das so auf
        der Shell aus. Fuer solche Sachen kann man Perl immer mal wieder ganz gut
        gebrauchen.

        再见,
        CK

        --
        73.255437% der Statistiken spielen eine Genauigkeit vor, die durch die angewandte Methode nicht gerechtfertigt wird.
        1. Moin

          Ist doch egal -- installiere dir ActiveState Perl und fuehre das so auf der Shell aus.

          Yep, bin schon dabei. Download läuft, den Rest bekomme ich selber hin.
          Danke nochmal.

          Thomas J.