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 Zeichenkettendarstellung des regulären Ausdrucks zurück.

In der Praxis liest sie die source und flags Eigenschaften des Regex aus und gibt einen String in der Form /source/flags zurück. Der Rückgabewert von toString() ist garantiert ein parsierbares Regex-Literal, obwohl es möglicherweise nicht exakt der ursprüngliche Text ist, der für das Regex spezifiziert wurde (zum Beispiel könnten die Flags neu angeordnet werden).

Beispiele

Verwendung von toString()

Das folgende Beispiel zeigt den String-Wert 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 den String "/(?:)/" zurück, und Zeilenumbrüche wie \n werden escaped. Dies sorgt dafür, dass der zurückgegebene Wert immer ein gültiges Regex-Literal ist.

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