Heim >Web-Frontend >js-Tutorial >Wie kann ich Variablen in „String.replaceAll()' von JavaScript mit regulären Ausdrücken verwenden?

Wie kann ich Variablen in „String.replaceAll()' von JavaScript mit regulären Ausdrücken verwenden?

Barbara Streisand
Barbara StreisandOriginal
2024-12-19 01:29:10128Durchsuche

How Can I Use Variables in JavaScript's `String.replaceAll()` with Regular Expressions?

Variablen in reguläre Ausdrücke integrieren

Bei der Suche nach einem prägnanten Ansatz für die String.replaceAll()-Methode von JavaScript erweisen sich reguläre Ausdrücke oft als Ideal Lösung. Allerdings stellt die Einbeziehung von Variablen in diese Ausdrücke eine Herausforderung dar. Während es möglich ist, Zeichen direkt zu ersetzen, beispielsweise „B“ durch „A“, besteht das Ziel darin, Variablen innerhalb der Regex-Zeichenfolge zu verwenden.

Um dies zu erreichen, können wir RegExp-Objekte nutzen. Anstatt die herkömmliche /sREGEXs/g-Syntax zu verwenden, erstellen wir ein neues RegExp-Objekt nach dem folgenden Muster:

let re = new RegExp(String.raw`\s${variable}\s`, "g");

Hier stellt „Variable“ die Zeichenfolge dar, die wir dynamisch ersetzen möchten. Das RegExp-Objekt enthält effektiv unsere Regex-Zeichenfolge mit integrierter Variable.

Um dieses Objekt zu nutzen, fahren wir mit dem folgenden Schritt fort:

"mystring1".replace(re, "newstring");

Dieser Ansatz ermöglicht das Ersetzen jeder Instanz von 'variable' mit 'newstring' in "mystring1".

Bei älteren Browsern oder Node.js-Umgebungen kann die folgende Alternative sein verwendet:

var re = new RegExp("\s" + variable + "\s", "g");
"mystring1".replace(re, "newstring");

Das obige ist der detaillierte Inhalt vonWie kann ich Variablen in „String.replaceAll()' von JavaScript mit regulären Ausdrücken verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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