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
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:
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.
new RegExp().toString(); // "/(?:)/"
new RegExp("\n").toString() === "/\\n/"; // true
Spezifikationen
Specification |
---|
ECMAScript® 2026 Language Specification # sec-regexp.prototype.tostring |