Charles: Zeilenvorschübe aus Dateien entfernen

Hallo, ich habe folgende Frage:

In einer größeren Zahl von HTML-Dateien sollen bestimmte Veränderungen vorgenommen und der Text soll später neu formatiert werden (mit Text::Wrap 80 Zeichen pro Zeile). Dazu möchte ich zunächst einmal alle Zeilenvorschübe aus den Dateien entfernen, damit HTML-Tags nicht durch \n getrennt sind, so wie im folgenden Beispiel:

<a href="http://www.irgendeineurl.de"
target="_blank">Der Name der
Seite</a>

Ich kenne die Struktur der HTML-Seiten nicht. Wie kann ich mit RegEx ganz sicher gehen, dass alle Zeilenvorschübe raus sind? Reicht folgende Anweisung aus?

$htmlseite =~ s/\n|\cM\n|\n\cM|\cM/ /gm;

Charles

  1. Hi,

    In einer größeren Zahl von HTML-Dateien sollen bestimmte Veränderungen vorgenommen und der Text soll später neu formatiert werden (mit Text::Wrap 80 Zeichen pro Zeile). Dazu möchte ich zunächst einmal alle Zeilenvorschübe aus den Dateien entfernen, damit HTML-Tags nicht durch \n getrennt sind, so wie im folgenden Beispiel:

    Damit machst du deinen HTML-Dateien wohl ziemlich unleserlich. Aber is ja deine Sache ;-)

    Ich kenne die Struktur der HTML-Seiten nicht. Wie kann ich mit RegEx ganz sicher gehen, dass alle Zeilenvorschübe raus sind? Reicht folgende Anweisung aus?

    $htmlseite =~ s/\n|\cM\n|\n\cM|\cM/ /gm;

    fuer was steht \cM ?

    ich haette es so geloest: s/\s+/ /g
    Damit erstezt du auch gleich mehrere Whitespaces durch ein Leerzeichen.

    mfG,
    steckl