Wie kann ich Zeilenumbrüche (Line breaks) entfernen bzw. vereinheitlichen?

Wenn man Dateien (z.B. CSV oder Excel) aus verschiedenen Systemen verarbeitet, muss man evtl. mit den verschiedenen Arten von Zeilenumbrüchen umgehen (siehe Codierung von Zeilenumbrüchen).

Zwei typischen Anforderungen sind:

  • Zeilenumbrüche entfernen
  • Zeilenumbrüche vereinheitlichen / ersetzen

Zeilenumbrüche entfernen

Die einfachste Möglichkeit bietet die Textfunktion, die es erlaubt Zeilenumbrüche durch Leerzeichen zu ersetzen oder komplett zu entfernen.

Noch mehr Flexibilität mit regulären Ausdrücken

Mit der Suchen & Ersetzen Funktion und einem regulären Ausdruck (sog. RegEx - Regular Expression) kann man das Gleiche erreichen, aber hat noch mehr Einfluss darauf, wie die Zeilenumbrüche ersetzt werden.

Beispiel 1

Suchmuster (RegEx): \r\n?|\n

Ersetzen durch:

Dieses Beispiel entfernt beide Arten von Zeilenumbrüchen (sowohl \r\n als auch \n) komplett.

Zeilenumbrüche vereinheitlichen

Damit meint man, dass die verschiedenen Arten von Zeilenumbrüchen, durch etwas einheitliches ersetzt werden - z.B. wenn man Mischformen in der Datei hat.

Beispiel 2

Suchmuster (RegEx): \r\n?|\n

Ersetzen durch: <br />

Dieses Beispiel ersetzt Zeilenumbrüche durch <br />, dem Tag für einen Zeilenumbruch in HTML.

Regulären Ausdruck mit Freemarker anwenden

Alternativ kann man reguläre Ausdrücke auch mit einem Freemarker Script anwenden (replace function):

Beispiel:

HTML

${myvariable!?replace("\r\n?|\n","","r")}

Dieses Beispiel entfernt beide Arten von Zeilenumbrüchen (sowohl \r\n als auch \n) komplett.
Wichtig ist der letzte Parameter „r“, womit gesagt wird, dass es sich um eine regEx handelt.

Weitere Beispiele, um Daten zu bereinigen

Die oben vorgestellte Funktion im Mapper Step standardmäßig in Synesty möglich und Teil das Basis Add-Ons.
Im Tools Add-On gibt es jedoch viele weitere Spezielsteps zur Datenbearbeitung und Bereinigung.