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
preg_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
$arr = ['a1', '2b', 'c3', '4d', 'e5'];
$res = preg_grep('/^\d/', $arr);
var_dump($res);
?>
Kodun icrasının nəticəsi:
['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
$arr = ['a1', '2b', 'c3', '4d', 'e5'];
$res = preg_grep('/^\d/', $arr, PREG_GREP_INVERT);
var_dump($res);
?>
Kodun icrasının nəticəsi:
['a1', 'c3', 'e5']
Nümunə
Yalnız rəqəmlərdən ibarət olan bütün massiv elementlərini tapaq:
<?php
$arr = ['123', 'abc', '45', 'de', '678'];
$res = preg_grep('/^\d+$/', $arr);
var_dump($res);
?>
Kodun icrasının nəticəsi:
['123', '45', '678']
Həmçinin bax
-
preg_matchfunksiyasına,
ki, requlyar ifadəyə uyğunluq yoxlayır -
preg_replacefunksiyasına,
ki, requlyar ifadə ilə axtarış və əvəzetmə edir