MDN wants to learn about developers like you: https://qsurvey.mozilla.com/s3/MDN-dev-survey

На цій сторінці виникла помилка зі скриптом. Поки вона адресується редакторам сайту, ви можете переглянути частину вмісту нижче.

Переклад не закінчено. Будь ласка, допоможіть перекласти цю статтю з англійської.

{{JSRef}}

Властивість sourse повертає  стороку, що містить текст шаблону регулярного виразу, і він немає містити два слеша з обох сторін, а також будь-які прапори регулярного виразу.

{{js_property_attributes(ні,ні, так)}}

Приклад

Використовування 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  {{Spec2('Стандарт')}} Первісне визначення. Реалізовано в JavaScript 1.2. JavaScript 1.5: є властивістю примірника {{jsxref("RegExp")}} а не {{jsxref("RegExp")}} об'єкта.
{{SpecName('ES5.1', '#sec-15.10.7.1', 'RegExp.prototype.source')}} {{Spec2('Стандарт')}} Властивість source для порожніх регулярних виразів тепер повертає "(?:)" замість порожнього рядка. Визначення для відповідної поведінки було додано.
{{SpecName('ES6', '#sec-get-regexp.prototype.source', 'RegExp.prototype.source')}} {{Spec2('Стандарт')}} Source зараз є властивістю доступу, а не власною властивістю даних.
{{SpecName('ESDraft', '#sec-get-regexp.prototype.source', 'RegExp.prototype.source')}} {{Spec2('Кандидат в рекомендації')}}  

Browser compatibility

{{CompatibilityTable}}
Особливість Chrome Firefox (Gecko) Internet Explorer Opera Safari
Базова підтримка {{Так}} {{Так}} {{Так}} {{Так}} {{Так}}
"(?:)" для порожніх регулярних виразів {{Не підтримує}} {{CompatGeckoDesktop(38)}} {{CompatUnknown}} {{CompatUnknown}} {{Так}}
Запобігання(вирішення) {{CompatUnknown}} {{CompatGeckoDesktop(38)}} {{CompatUnknown}} {{CompatUnknown}} {{CompatUnknown}}
Прототип оцінювач властивості {{CompatUnknown}} {{CompatGeckoDesktop(41)}} {{CompatUnknown}} {{CompatUnknown}} {{CompatUnknown}}
Особливість Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Базова підтримка {{Так}} {{Так}} {{Так}} {{Так}} {{Так}} {{Так}}
"(?:)" для порожніх регулярних виразів {{CompatUnknown}} {{CompatUnknown}} {{CompatGeckoMobile(38)}} {{CompatUnknown}} {{CompatUnknown}} {{CompatUnknown}}
Запобігання(вирішення) {{CompatUnknown}} {{CompatUnknown}} {{CompatGeckoMobile(38)}} {{CompatUnknown}} {{CompatUnknown}} {{CompatUnknown}}
Прототип оцінювач властивості {{CompatUnknown}} {{CompatUnknown}} {{CompatGeckoMobile(41)}} {{CompatUnknown}} {{CompatUnknown}} {{CompatUnknown}}

Дивіться також

  • {{jsxref("RegExp.prototype.flags")}}

Мітки документа й учасники

 Зробили внесок у цю сторінку: Stand1k
 Востаннє оновлена: Stand1k,