Preg_grep funksiyası

preg_grep funksiyası verilmiş requlyar ifadəyə uyğun gələn massiv elementlərini qaytarır. Funksiya birinci parametrdə requlyar ifadə olan sətiri, ikinci parametrdə isə axtarış aparılacaq massivi qəbul edir. Üçüncü istəyə bağlı parametr requlyar ifadəyə uyğun gəlməyən elementlərin qaytarılıb-qaytarılmayacağını təyin edir.

Sintaksis

phppreg_grep(pattern, array, [flags]);

Flaglar

Flag Əlavə izah
PREG_GREP_INVERT Nəticəni çevirir - şablona UYĞUN GƏLMEYƏN elementləri qaytarır.
PREG_GREP_NO_ERROR Səhv requlyar ifadə verildikdə xəta yaratmır (PHP 8.1+).

Nümunə

Rəqəmlə başlayan bütün massiv elementlərini tapaq:

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

Kodun icrasının nəticəsi:

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

Nümunə

Requlyar ifadəyə UYĞUN GƏLMEYƏN elementləri almaq üçün PREG_GREP_INVERT flagindən istifadə edək:

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

Kodun icrasının nəticəsi:

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

Nümunə

Yalnız rəqəmlərdən ibarət olan bütün massiv elementlərini tapaq:

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

Kodun icrasının nəticəsi:

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

Həmçinin bax

  • preg_match funksiyasına,
    ki, requlyar ifadəyə uyğunluq yoxlayır
  • preg_replace funksiyasına,
    ki, requlyar ifadə ilə axtarış və əvəzetmə edir