Поделиться через


Метод exec

Обновлен: Ноябрь 2007

Выполняет поиск по строке с помощью шаблона регулярного выражения и возвращает массив, содержащий результаты поиска.

function exec(str : String) : Array

Аргументы

  • str
    Обязательно. Объект String или строковый литерал, по которому выполняется поиск.

Заметки

Если метод exec не находит совпадений, возвращается результат null. Если совпадение найдено, метод exec возвращает массив, а свойства глобального объекта RegExp обновляются в соответствии с результатами совпадения. Нулевой элемент массива содержит полное совпадение, элементы с 1 по n содержит вложенные совпадения внутри совпадения. Такое поведения идентично поведению метода match без установленного глобального флага (g).

Если для регулярного выражения установлен глобальный флаг, метод exec выполняет поиск в строке, начиная с позиции, указанной значением lastIndex. Если глобальный флаг не установлен, метод exec пропускает значение lastIndex и выполняет поиск с начала строки.

Массив, возвращенный методом exec, имеет три свойства: input, index и lastIndex. Свойство input содержит всю строку, по которой выполнялся поиск. Свойство index содержит положение совпавшей подстроки внутри целой строки, по которой выполнялся поиск. Свойство lastIndex содержит положение после последнего знака в совпадении.

Пример

В следующем примере показано использование метода exec.

function RegExpTest() {
   var s = "";
   var src = "The rain in Spain falls mainly in the plain.";
   // Create regular expression pattern for matching a word.
   var re = /\w+/g;
   var arr;
   // Loop over all the regular expression matches in the string.
   while ((arr = re.exec(src)) != null)
      s += arr.index + "-" + arr.lastIndex + "\t" + arr + "\n";
   return s;
}

Требования

Версия 3

Применение:

Объект Regular Expression

См. также

Основные понятия

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

Ссылки

Метод match

Объект RegExp

Метод search

Метод test