Die von PointedEars gegebene Antwort ist alles, was die meisten von uns brauchen. Aber als ich der Antwort von Mathias Bynens folgte, machte ich einen Ausflug zu Wikipedia und fand dies: https://en.wikipedia.org/wiki/Newline .
Das Folgende ist eine Drop-in-Funktion, die alles implementiert, was die obige Wiki-Seite zum Zeitpunkt dieser Antwort als "neue Zeile" betrachtet.
Wenn etwas nicht in Ihren Fall passt, entfernen Sie es einfach. Auch, wenn Sie für die Leistung suchen dies vielleicht nicht sein, aber für eine schnelle Werkzeug, das die Arbeit in jedem Fall tut, sollte dies nützlich sein.
// replaces all "new line" characters contained in `someString` with the given `replacementString`
const replaceNewLineChars = ((someString, replacementString = ``) => { // defaults to just removing
const LF = `\u{000a}`; // Line Feed (\n)
const VT = `\u{000b}`; // Vertical Tab
const FF = `\u{000c}`; // Form Feed
const CR = `\u{000d}`; // Carriage Return (\r)
const CRLF = `${CR}${LF}`; // (\r\n)
const NEL = `\u{0085}`; // Next Line
const LS = `\u{2028}`; // Line Separator
const PS = `\u{2029}`; // Paragraph Separator
const lineTerminators = [LF, VT, FF, CR, CRLF, NEL, LS, PS]; // all Unicode `lineTerminators`
let finalString = someString.normalize(`NFD`); // better safe than sorry? Or is it?
for (let lineTerminator of lineTerminators) {
if (finalString.includes(lineTerminator)) { // check if the string contains the current `lineTerminator`
let regex = new RegExp(lineTerminator.normalize(`NFD`), `gu`); // create the `regex` for the current `lineTerminator`
finalString = finalString.replace(regex, replacementString); // perform the replacement
};
};
return finalString.normalize(`NFC`); // return the `finalString` (without any Unicode `lineTerminators`)
});
0 Stimmen
Mögliches Duplikat von Wie kann ich alle Zeilenumbrüche in einer Zeichenkette durch <br />-Tags ersetzen?