Метод match() выполняет поиск по строке с использованием регулярного выражения и возвращает массив, содержащий результаты поиска.

str.match(regexp)
regexp
Объект регулярного выражения RegExp, содержащий шаблон регулярного выражения и применимые флаги. Также может быть передана переменная или строковый литерал, содержащий шаблон регулярного выражения и флаги. Если будет передан объект, не являющийся регулярным выражением, он будет неявно преобразован в объект RegExp через вызов конструктора new RegExp(obj).

Массив, содержащий совпадения или null, если совпадение не найдено.

Если регулярное выражение не содержит флаг «g», возвращаемый результат будет тем же самым, что и при вызове метода RegExp.exec(), т.е. метод match() не выполняет глобальный поиск, а просто возвра­щает первое соответствие.

Если регулярное выражение содержит флаг «g», метод вернёт массив, содержащий все совпадения.

Если установлен флаг «i», то при поиске регистр не учитывается.

На заметку: Если вам нужно только проверить, совпадает ли строка с регулярным выражением – используйсте regexp.test(string).
Если необходимо найти только первое совпадение – вам может лучше подойти regexp.exec(string).

В следующем примере метод match() используется для поиска слова 'статья', за которым следуют 1 или более цифр, за которыми следуют 0 или более раз группы из точки и цифр (от 1 до 3-х). Регулярное выражение включает флаг i, так что регистр букв игнорируется.

Выполнить код »

В этом примере метод возвратит массив из трех элементов: ['статья 9.212.33', '9.212.33', '.33']:

  • "статья 9.212.33" – полное совпадение с регулярным выражением /статья (\d+(\.\d{1,3})*)/i;
  • "9.212.33" – первая скобка в совпадении (\d+(\.\d{1,3})*);
  • ".33" – вторая скобка в совпадении (\.\d{1,3}).

При глобальном поиске (флаг g) и игнорировании регистра символов (флаг i) регультат match() возвратит все буквы от А до Е и от а до е, каждая в своём элементе массива:

Выполнить код »

Комментарии

пожелания к комментариям…
  • Приветствуются комментарии, соответствующие теме урока: вопросы, ответы, предложения.
  • Одну строчку кода оборачивайте в тег <code>, несколько строчек кода — в теги <pre><code>...ваш код...</code></pre>.
  • Допускаются ссылки на онлайн-песочницы (codepen, plnkr, JSBin и др.).