44 Stimmen

JavaScript: Zeilenumbruch ersetzen

Frage von SimplyMe | 03.01.2012 um 20:11

Ich habe einen String in JavaScript und möchte in diesem alle Zeilenumbrüche durch <br> ersetzen. Ich habe bislang folgenden Ansatz dazu entwickelt:

str.replace("\n", "<br>");

Aus welchen Gründen auch immer, das scheint nicht zu funktionieren. Woran kann das liegen?

AntwortenPositivNegativ
4Beste Antwort6 Stimmen

Je nach Betriebssysten werden andere Zeichen als Zeilenumbruch verwendet. Unter Windows ist das #13#10 (\r\n), unter Unix oder Linux #10 (\n) und unter macOS #13 (\r). Wenn du also nur \n ersetzt, wirst du damit zum Beispiel unter Windows nicht weit kommen.

Probiere es mal mit dieser Lösung:

str.replace(/\n|\r/g, "<br>");

Dieser reguläre Ausdruck führt dazu, das wirklich alle Arten von Zeilenumbrüchen ersetzt werden.

Übrigens, wenn du bei deiner Lösung oben bleibst, wird auch nur das erste Vorkommen von\n ersetzt. Besser ist auch hier einen regulären Ausdruck zu verwenden:

str.replace(/\n/g, "<br>");

Das g am Ende sorgt dafür, dass auch alle Vorkommen ersetzt werden.
05.01.2012 um 20:05

AntwortenPositiv Negativ
Antworten

Ähnliche Themen

Wichtiger Hinweis

Bitte beachten Sie: Die Beiträge auf askingbox.de sind Beiträge von Nutzern und sollen keine professionelle Beratung ersetzen. Sie werden nicht von Unabhängigen geprüft und spiegeln nicht zwingend die Meinung von askingbox.de wieder. Mehr erfahren.

Jetzt mitmachen

Stellen Sie Ihre eigene Frage oder schreiben Sie Ihren eigenen Artikel auf askingbox.de. So gehts.