Запіс на курсы па HTML, CSS, JavaScript, PHP, Python, фрэймворкам і CMS,
а таксама: дапамога ў пошуку працы і заказаў, стажыроўка на рэальных праектах→
206 of 410 menu

Функцыя preg_grep

Функцыя preg_grep вяртае масіў элементаў, якія адпавядаюць зададзенаму рэгулярнаму выражэнню. Першым параметрам функцыя прымае радок з рэгулярным выражэннем, а другім - масіў для пошуку. Трэці неабавязковы параметр вызначае, ці варта вяртаць элементы, якія не адпавядаюць рэгулярнаму выражэнню.

Сінтаксіс

preg_grep(pattern, array, [flags]);

Сцягі

Сцяг Апісанне
PREG_GREP_INVERT Інвертуе вынік - вяртае элементы, якія НЕ адпавядаюць шаблону.
PREG_GREP_NO_ERROR Не генеруе памылку пры няправільным рэгулярным выражэнні (PHP 8.1+).

Прыклад

Знайдзем усе элементы масіва, якія пачынаюцца з лічбы:

<?php $arr = ['a1', '2b', 'c3', '4d', 'e5']; $res = preg_grep('/^\d/', $arr); var_dump($res); ?>

Вынік выканання кода:

['2b', '4d']

Прыклад

Выкарастаем сцяг PREG_GREP_INVERT для атрымання элементаў, якія НЕ адпавядаюць рэгулярнаму выражэнню:

<?php $arr = ['a1', '2b', 'c3', '4d', 'e5']; $res = preg_grep('/^\d/', $arr, PREG_GREP_INVERT); var_dump($res); ?>

Вынік выканання кода:

['a1', 'c3', 'e5']

Прыклад

Знайдзем усе элементы масіва, якія змяшчаюць толькі лічбы:

<?php $arr = ['123', 'abc', '45', 'de', '678']; $res = preg_grep('/^\d+$/', $arr); var_dump($res); ?>

Вынік выканання кода:

['123', '45', '678']

Глядзіце таксама

  • функцыю preg_match,
    якая выконвае праверку на адпаведнасць рэгулярнаму выражэнню
  • функцыю preg_replace,
    якая выконвае пошук і замену па рэгулярным выражэнні
byenru