2013-06-20T11:07:02
attaxich habe mit der look_down-Methode des TreeBuilder-Moduls einen Tag einer html-Seite ausgelesen.
Die (lange) Zeile will ich aber nach 60 Zeichen umbrechen. Geht das mit dem o.g. Modul oder gibt es (wie immer) noch einen anderen Weg? z.B. Zeile zwischenspeichern und mit substr etc. umbrechen...
Ich vermute, dass Du die Zeile so umbrechen willst, dass es von der Bedeutung her immer noch das gleiche HTML ist.
Ob das überhaupt theoretisch möglich ist, hängt vom Inhalt Deines HTML-Trees ab. Wenn das Element oder eines seiner Kinder eine Zeichenkette von mehr als 60 Zeichen ohne Whitespace hat, geht es z.B. nicht.
Ansosnten kannst Du den Output an Whitespaces, die nicht Teil eines Attribut-Wertes sind, problemlos umbrechen. Das geht mit
as_html() aus
HTML::Element nicht direkt. Aber man kann den Output-String natürlich mit ein paar Regex nachbearbeiten.
Alternativ kann man auch
HTML::Prettyprinter verwenden. Der schreibt das HTML von einem
HTML::Element raus und bietet dazu zahlreiche Formatierungsoptionen.