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
Tags:
Contributors to this page:
jameshkramer,
nmve,
eduardoboucas,
fscholz,
arai,
Mingun,
Sheppy,
evilpie,
Sevenspade,
Mgjbot,
Maian,
Dria
Last updated by:
jameshkramer,