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 String 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

Ein String, der das gegebene Objekt darstellt.

Beschreibung

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

In der Praxis liest es die source- und flags-Eigenschaften des regulären Ausdrucks aus und gibt einen String in der Form /source/flags zurück. Der Rückgabewert von toString() ist garantiert ein parsefähiges Regex-Literal, obwohl es möglicherweise nicht exakt derselbe Text ist, der ursprünglich für das Regex angegeben wurde (zum Beispiel können die Flags umgeordnet sein).

Beispiele

Nutzung von toString()

Das folgende Beispiel zeigt den String-Wert eines RegExp-Objekts an:

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 den String "/(?:)/" zurück, und Zeilentrennzeichen wie \n werden escaped. 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® 2026 Language Specification
# sec-regexp.prototype.tostring

Browser-Kompatibilität

Siehe auch