Spec-Zone.ru › JavaScript

RegExp.prototype.toString()

Базовый уровень Широко доступен

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и в различных версиях браузеров. Она доступна во всех браузерах с июля 2015 года.

Метод toString() экземпляров RegExp возвращает строку, представляющую это регулярное выражение.

Попробуйте

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: "/\n/g"

console.log(new RegExp("\\n", "g").toString());
// Expected output: "/\n/g"

Синтаксис

toString()

Параметры

Нет.

Возвращаемое значение

Строка, представляющая данный объект.

Описание

Объект RegExp переопределяет метод toString() объекта Object; он не наследует Object.prototype.toString(). Для объектов RegExp метод toString() возвращает строковое представление регулярного выражения.

На практике он считывает свойства source и flags регулярного выражения и возвращает строку в формате /source/flags. Гарантируется, что возвращаемое значение toString() будет разборным литералом регулярного выражения, хотя оно может и не совпадать с точным текстом, который был изначально указан для регулярного выражения (например, флаги могут быть переупорядочены).

Примеры

Использование toString()

Следующий пример демонстрирует строковое значение объекта RegExp:

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'

Пустые регулярные выражения и экранирование

Поскольку toString() обращается к свойству source, пустое регулярное выражение возвращает строку "/(?:)/", а символы новой строки, такие как \n, экранируются. Это гарантирует, что возвращаемое значение всегда будет действительным литералом регулярного выражения.

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

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

Спецификации

Спецификация
ECMAScript® 2027 Language Specification
# sec-regexp.prototype.tostring

Совместимость с браузерами

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

См. также

  • Object.prototype.toString()

© 2005–2025 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API