Hàm preg_grep
Hàm preg_grep trả về một mảng các phần tử khớp với biểu thức chính quy đã cho. Tham số đầu tiên hàm nhận một chuỗi chứa biểu thức chính quy, và tham số thứ hai - mảng để tìm kiếm. Tham số thứ ba không bắt buộc xác định liệu có nên trả về các phần tử không khớp với biểu thức chính quy hay không.
Cú pháp
preg_grep(pattern, array, [flags]);
Cờ
| Cờ | Mô tả |
|---|---|
PREG_GREP_INVERT |
Đảo ngược kết quả - trả về các phần tử KHÔNG khớp với mẫu. |
PREG_GREP_NO_ERROR |
Không tạo lỗi khi biểu thức chính quy không chính xác (PHP 8.1+). |
Ví dụ
Tìm tất cả các phần tử của mảng bắt đầu bằng chữ số:
<?php
$arr = ['a1', '2b', 'c3', '4d', 'e5'];
$res = preg_grep('/^\d/', $arr);
var_dump($res);
?>
Kết quả thực thi mã:
['2b', '4d']
Ví dụ
Sử dụng cờ PREG_GREP_INVERT để lấy các phần tử KHÔNG khớp với biểu thức chính quy:
<?php
$arr = ['a1', '2b', 'c3', '4d', 'e5'];
$res = preg_grep('/^\d/', $arr, PREG_GREP_INVERT);
var_dump($res);
?>
Kết quả thực thi mã:
['a1', 'c3', 'e5']
Ví dụ
Tìm tất cả các phần tử của mảng chỉ chứa chữ số:
<?php
$arr = ['123', 'abc', '45', 'de', '678'];
$res = preg_grep('/^\d+$/', $arr);
var_dump($res);
?>
Kết quả thực thi mã:
['123', '45', '678']
Xem thêm
-
hàm
preg_match,
thực hiện kiểm tra khớp với biểu thức chính quy -
hàm
preg_replace,
thực hiện tìm kiếm và thay thế theo biểu thức chính quy