MDN’s new design is in Beta! A sneak peek: https://blog.mozilla.org/opendesign/mdns-new-design-beta/

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

Syntax

regexObj.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.

Examples

Using toString()

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

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

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

Empty regular expressions and escaping

Starting with ECMAScript 5, an empty regular expression returns the string "/(?:)/" and line terminators such as "\n" are escaped:

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

new RegExp('\n').toString() === '/\n/';  // true, prior to ES5
new RegExp('\n').toString() === '/\\n/'; // true, starting with ES5

Specifications

Specification Status Comment
ECMAScript 3rd Edition (ECMA-262) Standard Initial definition. Implemented in JavaScript 1.1.
ECMAScript 5.1 (ECMA-262)
The definition of 'RegExp.prototype.toString' in that specification.
Standard Added definition for escaping behavior and "(?:)" for empty regular expressions.
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'RegExp.prototype.toString' in that specification.
Standard  
ECMAScript Latest Draft (ECMA-262)
The definition of 'RegExp.prototype.toString' in that specification.
Draft  

Browser compatibility

Feature Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)
Escaping (Yes) ? 38 (38) (Yes) (Yes) (Yes)
Generic function ? ? 39 (39) ? ? ?
Feature Android Chrome for Android Edge Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)
Escaping (Yes) (Yes) ? 38.0 (38) (Yes) (Yes) (Yes)
Generic function ? ? ? 39.0 (39) ? ? ?

See also

Document Tags and Contributors

 Last updated by: jameshkramer,