Funkcija preg_grep

Funkcija preg_grep vraća niz elemenata koji odgovaraju zadatom regularnom izrazu. Prvi parametar funkcije prihvata string sa regularnim izrazom, a drugi - niz za pretragu. Treći opcioni parametar određuje da li treba vratiti elemente koji ne odgovaraju regularnom izrazu.

Sintaksa

phppreg_grep(pattern, array, [flags]);

Zastavice (Flags)

Zastavica Opis
PREG_GREP_INVERT Obrne rezultat - vraća elemente koji NE odgovaraju šablonu.
PREG_GREP_NO_ERROR Ne generiše grešku pri neispravnom regularnom izrazu (PHP 8.1+).

Primer

Pronađimo sve elemente niza koji počinju cifrom:

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

Rezultat izvršavanja koda:

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

Primer

Upotrebimo zastavicu PREG_GREP_INVERT za dobijanje elemenata koji NE odgovaraju regularnom izrazu:

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

Rezultat izvršavanja koda:

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

Primer

Pronađimo sve elemente niza koji sadrže samo cifre:

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

Rezultat izvršavanja koda:

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

Vidite takođe

  • funkciju preg_match,
    koja vrši proveru podudarnosti sa regularnim izrazom
  • funkciju preg_replace,
    koja vrši pretragu i zamenu prema regularnom izrazu