RegExp.prototype.source
Властивість sourse повертає стороку, що містить текст шаблону регулярного виразу, і він немає містити два слеша з обох сторін, а також будь-які прапори регулярного виразу.
Атрибути поля RegExp.prototype.source |
|
---|---|
Доступний для запису | ні |
Доступний для переліку | ні |
Доступний для налаштування | так |
Приклад
Використовування source
var regex = /fooBar/ig;
console.log(regex.source); // "fooBar", не містить /.../ і прапори"ig".
Порожні регулярні вирази і як уникнути проблем
Починаючи з ECMAScript 5, властивість джерела більше не повертає порожній рядок для порожніх регулярних виразів. Замість цього, рядок «(? :)» повертається. Крім того, лінія термінатори (such as "\n") врятувалися в даний час.
new RegExp().source; // "(?:)"
new RegExp('\n').source === '\n'; // true до ES5
new RegExp('\n').source === '\\n'; // true,починаючи з ES5
Специфікації
Специфікації | Статус | Коментарій |
---|---|---|
ECMAScript 3 | Unknown | Первісне визначення. Реалізовано в JavaScript 1.2. JavaScript 1.5: є властивістю примірника RegExp а не RegExp об'єкта. |
ECMAScript 5.1 (ECMA-262) The definition of 'RegExp.prototype.source' in that specification. |
Unknown | Властивість source для порожніх регулярних виразів тепер повертає "(?:)" замість порожнього рядка. Визначення для відповідної поведінки було додано. |
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'RegExp.prototype.source' in that specification. |
Unknown | Source зараз є властивістю доступу, а не власною властивістю даних. |
ECMAScript (ECMA-262) The definition of 'RegExp.prototype.source' in that specification. |
Unknown |
Browser compatibility
We're converting our compatibility data into a machine-readable JSON format.
This compatibility table still uses the old format,
because we haven't yet converted the data it contains.
Find out how you can help! (en-US)
Особливість | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Базова підтримка | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |
"(?:)" для порожніх регулярних виразів | No support | 38 (38) | ? | ? | (Yes) |
Запобігання(вирішення) | ? | 38 (38) | ? | ? | ? |
Прототип оцінювач властивості | ? | 41 (41) | ? | ? | ? |
Особливість | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Базова підтримка | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) | (Yes) |
"(?:)" для порожніх регулярних виразів | ? | ? | 38.0 (38) | ? | ? | ? |
Запобігання(вирішення) | ? | ? | 38.0 (38) | ? | ? | ? |
Прототип оцінювач властивості | ? | ? | 41.0 (41) | ? | ? | ? |