ფუნქცია 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,
რომელიც ასრულებს ძიებას და ჩანაცვლებას რეგულარული გამოსახულებით