Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Справочник PHP

preg_match

Проверяет строку по регулярному выражению.

Синтаксис

preg_match(string $pattern, string $subject, array &$matches = null): int|false

Параметры

ПараметрТипОписание
$patternstringШаблон между разделителями, например `/\d+/`.
$subjectstringПроверяемая строка.
$matchesarrayНеобязательный. Сюда попадают совпадение и группы.

Возвращаемое значение

int|false`1`, если шаблон найден, `0` — если нет, `false` при ошибке в шаблоне.

Примеры

Проверка формата даты:

<?php
 
echo preg_match('/^\d{4}-\d{2}-\d{2}$/', '2025-01-30'), "\n";
echo preg_match('/^\d{4}-\d{2}-\d{2}$/', '30.01.2025');

Результат:

1
0

Группы попадают в массив:

<?php
 
preg_match('/(\w+)@(\w+\.\w+)/', 'Write to anna@example.com', $matches);
 
echo $matches[1], ' | ', $matches[2];

Результат:

anna | example.com

Примечания

Для текста с кириллицей добавляйте модификатор u: /кот/u. Функция находит только первое совпадение — все находит preg_match_all().

См. также

  • preg_replace — Заменяет всё, что подошло под регулярное выражение.
  • preg_match_all — Находит все совпадения с регулярным выражением.
  • str_contains — Проверяет, содержит ли строка заданную подстроку.

Вопросы и ответы по теме

В учебнике

  • Регулярные выражения — Регулярные выражения в PHP — preg_match, preg_replace, preg_split, группы и основные обозначения шаблонов.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.