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


Метод match

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

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

function match(rgExp : RegExp) : Array

Аргументы

  • rgExp
    Обязательный. Экземпляр объекта Regular Expression, содержащий шаблон регулярного выражения и установленные флаги. Может также быть именем переменной или строковым литералом, содержащим шаблон регулярного выражения и флаги.

Заметки

Если метод match не находит совпадений, возвращается результат null. Если совпадение найдено, метод match возвращает массив, а свойства глобального объекта RegExp обновляются в соответствии с результатами совпадения.

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

Если глобальный флаг не установлен (g), нулевой элемент массива содержит совпадение целиком, в то время как элементы 1 — n содержат только вложенные совпадения, найденные внутри совпадения. Такое поведение идентично поведению метода exec без установленного глобального флага. Если глобальный флаг установлен, элементы 0 - n содержат все найденные совпадения.

Пример

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

function MatchDemo(){
   var r, re;         //Declare variables.
   var s = "The rain in Spain falls mainly in the plain";
   re = /ain/i;    //Create regular expression pattern.
   r = s.match(re);   //Attempt match on search string.
   return(r);         //Return first occurrence of "ain".
}

В следующем примере демонстрируется использование метода match с установленным флагом g.

function MatchDemo(){
   var r, re;         //Declare variables.
   var s = "The rain in Spain falls mainly in the plain";
   re = /ain/ig;      //Create regular expression pattern.
   r = s.match(re);   //Attempt match on search string.
   return(r);         //Return array containing all four
                      // occurrences of "ain".
}

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

var r, re = "Spain";
r = "The rain in Spain".replace(re, "Canada");

Требования

Версия 3

Применение:

Объект "String"

См. также

Ссылки

Метод exec

Объект RegExp

Метод replace

Метод search

Метод test