Відмінності між версіями «Метод Exec»

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук
(Створена сторінка: '''Метод exec''' Синтаксис: регвир.exec (рядок) Аргументи: рядок - будь-яке рядковий вираз Резуль…)
 
 
(не показано 11 проміжних версій цього учасника)
Рядок 1: Рядок 1:
'''Метод exec'''
+
Синтаксис: регвир.exec (рядок)<br>
 
+
Аргументи: рядок - будь-який рядковий вираз<br>
Синтаксис: регвир.exec (рядок)
+
Результат: масив результатів або null<br>
Аргументи: рядок - будь-яке рядковий вираз
+
Результат: масив результатів або null
+
  
 
Метод exec виконує зіставлення рядки зі зразком, заданим регвир. Якщо зіставлення зі зразком закінчилося невдачею, то повертається значення null. В іншому випадку результатом є масив підрядка, відповідних заданому зразку. У процесі зіставлення проводиться оновлення всіх властивостей об'єкта регвир (і тим самим всіх властивостей об'єкта RegExp).
 
Метод exec виконує зіставлення рядки зі зразком, заданим регвир. Якщо зіставлення зі зразком закінчилося невдачею, то повертається значення null. В іншому випадку результатом є масив підрядка, відповідних заданому зразку. У процесі зіставлення проводиться оновлення всіх властивостей об'єкта регвир (і тим самим всіх властивостей об'єкта RegExp).
Рядок 9: Рядок 7:
 
Результуючий масив має наступні властивості:
 
Результуючий масив має наступні властивості:
  
    * Властивість input містить вихідну рядок;
+
* властивість input містить вихідну рядок;
    * Властивість index містить позицію знайденої підрядка у вихідній рядку;
+
* властивість index містить позицію знайденої підрядка у вихідній рядку;
    * Властивість length одно n + 1, де n - кількість подвираженій регулярного виразу, укладених в круглі дужки;
+
* властивість length одно n + 1, де n - кількість подвираженій регулярного виразу, укладених в круглі дужки;
    * Елемент 0 містить знайдену підрядок;
+
* елемент 0 містить знайдену підрядок;
    * Елементи 1, ..., n містять підрядка, відповідні подвираженіям регулярного виразу в круглих дужках.
+
* елементи 1, ..., n містять підрядка, відповідні подвираженіям регулярного виразу в круглих дужках.
  
 
Приклад: наступний сценарій
 
Приклад: наступний сценарій
 +
var arr = /(\d+)\.(\d+)\.(\d+)/.exec("Я народився 20.03.1998");
 +
document.write("Дата народження:", arr[0]);
 +
document.write("День народження: ", arr[1]);
 +
document.write("Місяць народження: ", arr[2]);
 +
document.write("Рік народження: ", arr[3]);
 +
виведе на екран браузера текст:<br>
 +
Дата народження: 20.03.1998<br>
 +
День народження: 20<br>
 +
Місяць народження: 03<br>
 +
Рік народження: 1998<br>
 +
Включення до регулярний вираз опції глобального пошуку дозволяє багаторазово застосовувати цей метод до вихідної рядку для послідовного виділення всіх підрядка, відповідних даного зразка. Наприклад, наступний сценарій<br>
 +
var re = /\d+/g;
 +
var s = "123 abc 456 def 789 xyz";
 +
var result;
 +
while (result = re.exec(s))
 +
document.write(result[0] + " ");
 +
виведе на екран браузера рядок 123 456 789.<br>
 +
'''Примітка.''' Пам'ятайте, що в подібних циклах не можна виконувати операції з регулярними виразами, оскільки вони змінюють статичні властивості об'єкта RegExp.
 +
[[Регулярні вирази в JavaScript]]

Поточна версія на 10:50, 13 травня 2010

Синтаксис: регвир.exec (рядок)
Аргументи: рядок - будь-який рядковий вираз
Результат: масив результатів або null

Метод exec виконує зіставлення рядки зі зразком, заданим регвир. Якщо зіставлення зі зразком закінчилося невдачею, то повертається значення null. В іншому випадку результатом є масив підрядка, відповідних заданому зразку. У процесі зіставлення проводиться оновлення всіх властивостей об'єкта регвир (і тим самим всіх властивостей об'єкта RegExp).

Результуючий масив має наступні властивості:

  • властивість input містить вихідну рядок;
  • властивість index містить позицію знайденої підрядка у вихідній рядку;
  • властивість length одно n + 1, де n - кількість подвираженій регулярного виразу, укладених в круглі дужки;
  • елемент 0 містить знайдену підрядок;
  • елементи 1, ..., n містять підрядка, відповідні подвираженіям регулярного виразу в круглих дужках.

Приклад: наступний сценарій

var arr = /(\d+)\.(\d+)\.(\d+)/.exec("Я народився 20.03.1998");
document.write("Дата народження:", arr[0]);
document.write("День народження: ", arr[1]);
document.write("Місяць народження: ", arr[2]);
document.write("Рік народження: ", arr[3]);

виведе на екран браузера текст:

Дата народження: 20.03.1998
День народження: 20
Місяць народження: 03
Рік народження: 1998

Включення до регулярний вираз опції глобального пошуку дозволяє багаторазово застосовувати цей метод до вихідної рядку для послідовного виділення всіх підрядка, відповідних даного зразка. Наприклад, наступний сценарій

var re = /\d+/g;
var s = "123 abc 456 def 789 xyz";
var result;
while (result = re.exec(s))
document.write(result[0] + " ");

виведе на екран браузера рядок 123 456 789.
Примітка. Пам'ятайте, що в подібних циклах не можна виконувати операції з регулярними виразами, оскільки вони змінюють статичні властивості об'єкта RegExp.

Регулярні вирази в JavaScript