Einzelne Backslashes in Strings: Eine umfassende Anleitung
In JavaScript kann die Verwendung eines einzelnen Backslashs innerhalb eines Strings aufgrund seiner besonderen Bedeutung schwierig sein sowohl in Zeichenfolgen als auch in regulären Ausdrücken. Um einen tatsächlichen Backslash innerhalb eines Werts zu erhalten, müssen Escape-Sequenzen verwendet werden.
Backslashes in Strings mit Escapezeichen versehen
Um in JavaScript-String-Literalen einen literalen Backslash einzufügen, verwenden Sie doppelte Backslashes (). Beispiel:
var str = "\I have one backslash";
In diesem Szenario fungiert der erste Backslash als Escape-Zeichen und gibt an, dass das folgende Zeichen wörtlich behandelt werden soll. Folglich enthält die Variable str eine Zeichenfolge mit einem einzelnen Backslash.
Backslashes in regulären Ausdrücken maskieren
Reguläre Ausdrücke verwenden auch Backslashes, daher ist eine Unterscheidung wichtig zwischen tatsächlichen Backslashes und Escape-Sequenzen. Um einen wörtlichen Backslash in einem regulären Ausdruck abzugleichen, verwenden Sie doppelte Backslashes ().
var rex = /\/;
Reguläre Ausdrücke aus Strings erstellen
Beim Erstellen eines regulären Ausdrucks aus einem String gibt es zwei Escape-Ebenen: String-Literale und reguläre Ausdrucksmuster. Um beispielsweise einen einzelnen Backslash mit einem durch eine Zeichenfolge erstellten regulären Ausdruck abzugleichen:
// Matches *one* backslash var rex = new RegExp("\\");
Die ersten beiden Backslashes maskieren einen Backslash im String-Literal, während die zweiten beiden Backslashes die gewünschte Escape-Sequenz innerhalb des regulären Ausdrucks erzeugen Ausdrucksmuster.
ES2015-Update: String.raw und Template Literale
In ES2015 bieten Vorlagenliterale eine alternative Möglichkeit, literale Backslashes ohne zusätzliche Escapezeichen einzuschließen.
// Using String.raw let str = String.raw`\apple`;
Achtung:
Ersatzausdrücke (${}) können nicht in Vorlagenliteralen verwendet werden, die Literal-Backslashes enthalten, da sie das Literal verändern Verhalten.
Das obige ist der detaillierte Inhalt vonWie entkomme ich Backslashes in JavaScript-Strings und regulären Ausdrücken richtig?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!