W3cubDocs

/JavaScript

RegExp.prototype.toString()

The toString() method returns a string representing the regular expression.

Try it

Syntax

toString()

Return value

A string representing the given object.

Description

The RegExp object overrides the toString() method of the Object object; it does not inherit Object.prototype.toString(). For RegExp objects, the toString() method returns a string representation of the regular expression.

In practice, it reads the regex's source and flags properties and returns a string in the form /source/flags. The toString() return value is guaranteed to be a parsable regex literal, although it may not be the exact same text as what was originally specified for the regex (for example, the flags may be reordered).

Examples

Using toString()

The following example displays the string value of a RegExp object:

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

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

Empty regular expressions and escaping

Since toString() accesses the source property, an empty regular expression returns the string "/(?:)/", and line terminators such as \n are escaped. This makes the returned value always a valid regex literal.

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

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

Specifications

Browser compatibility

Desktop Mobile Server
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet Deno Node.js
toString
1
12
1
4
5
1
4.4
18
4
10.1
1
1.0
1.0
0.10.0
escaping
73
12
38
9
60
6
73
73
38
52
6
11.0
1.0
12.0.0

See also

© 2005–2022 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/toString