RegExp.prototype.toString()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Die toString()-Methode von RegExp-Instanzen gibt einen Zeichenfolgenwert zurück, der diesen regulären Ausdruck darstellt.

Probieren Sie es aus

console.log(new RegExp("a+b+c"));
// Expected output: /a+b+c/

console.log(new RegExp("a+b+c").toString());
// Expected output: "/a+b+c/"

console.log(new RegExp("bar", "g").toString());
// Expected output: "/bar/g"

console.log(new RegExp("\n", "g").toString());
// Expected output (if your browser supports escaping): "/\n/g"

console.log(new RegExp("\\n", "g").toString());
// Expected output: "/\n/g"

Syntax

js
toString()

Parameter

Keine.

Rückgabewert

Eine Zeichenfolge, die das gegebene Objekt darstellt.

Beschreibung

Das RegExp-Objekt überschreibt die toString()-Methode des Object-Objekts; es erbt nicht Object.prototype.toString(). Für RegExp-Objekte gibt die toString()-Methode eine Zeichenfolgen-Darstellung des regulären Ausdrucks zurück.

In der Praxis liest sie die source- und flags-Eigenschaften des regulären Ausdrucks aus und gibt eine Zeichenfolge in der Form /source/flags zurück. Der Rückgabewert von toString() ist garantiert ein analysierbares RegEx-Literal, obwohl es möglicherweise nicht exakt dem ursprünglich angegebenen Text des regulären Ausdrucks entspricht (zum Beispiel können die Flags umgeordnet sein).

Beispiele

Verwendung von toString()

Das folgende Beispiel zeigt den Zeichenfolgenwert eines RegExp-Objekts:

js
const myExp = new RegExp("a+b+c");
console.log(myExp.toString()); // '/a+b+c/'

const foo = new RegExp("bar", "g");
console.log(foo.toString()); // '/bar/g'

Leere reguläre Ausdrücke und Escaping

Da toString() auf die source-Eigenschaft zugreift, gibt ein leerer regulärer Ausdruck die Zeichenfolge "/(?:)/" zurück, und Zeilenabschlusszeichen wie \n werden maskiert. Dadurch ist der zurückgegebene Wert immer ein gültiges RegEx-Literal.

js
new RegExp().toString(); // "/(?:)/"

new RegExp("\n").toString() === "/\\n/"; // true

Spezifikationen

Specification
ECMAScript® 2025 Language Specification
# sec-regexp.prototype.tostring

Browser-Kompatibilität

Siehe auch