preg_grep функциясы

preg_grep функциясы берилген регулярдуу туюнтмага дал келген элементтердин массивин кайтарат. Функциянын биринчи параметри катары регулярдуу туюнтманын сабы, экинчиси - издөө үчүн массив кабыл алынат. Үчүнчү милдеттүү эмес параметр, регулярдуу туюнтмага дал келбеген элементтерди кайтаруу керекпи-жокпу аныктайт.

Синтаксис

phppreg_grep(pattern, array, [flags]);

Флагдар

Флаг Сүрөттөмө
PREG_GREP_INVERT Натыйжаны инверттөө - үлгүгө дал келбеген элементтерди кайтарат.
PREG_GREP_NO_ERROR Регулярдуу туюнтма туура эмес болгондо ката чыгарбайт (PHP 8.1+).

Мисал

Массивдин сан менен башталган бардык элементтерин табалы:

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

Кодду иштетүү натыйжасы:

php['2b', '4d']

Мисал

Регулярдуу туюнтмага дал келбеген элементтерди алуу үчүн PREG_GREP_INVERT флагын колдонолу:

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

Кодду иштетүү натыйжасы:

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

Мисал

Массивдин сандардан гана турган бардык элементтерин табалы:

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

Кодду иштетүү натыйжасы:

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

Дагы караңыз

  • preg_match функциясын,
    ал регулярдуу туюнтмага дал келүүнү текшерет
  • preg_replace функциясын,
    ал регулярдуу туюнтма боюнча издөө жана алмаштырууну ишке ашырат