Функција 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,
која обавља претрагу и замену помоћу регуларног израза