Heim > Web-Frontend > js-Tutorial > Wie entkomme ich Backslashes in JavaScript-Strings und regulären Ausdrücken richtig?

Wie entkomme ich Backslashes in JavaScript-Strings und regulären Ausdrücken richtig?

DDD
Freigeben: 2024-12-16 22:16:17
Original
618 Leute haben es durchsucht

How Do I Properly Escape Backslashes in JavaScript Strings and Regular Expressions?

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";
Nach dem Login kopieren

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 = /\/;
Nach dem Login kopieren

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("\\");
Nach dem Login kopieren

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`;
Nach dem Login kopieren

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!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage