Hàm preg_filter () trong PHP
Thí dụ
Đặt các số trong dấu ngoặc vuông trong một danh sách các chuỗi:
<?php
$input = [
"It is 5 o'clock",
"40 days",
"No
numbers here",
"In the year 2000"
];
$result =
preg_filter('/[0-9]+/', '($0)', $input);
print_r($result);
?>
Định nghĩa và Cách sử dụng
Hàm preg_filter()
trả về một chuỗi hoặc một mảng các chuỗi trong đó các kết quả phù hợp của mẫu đã được thay thế bằng chuỗi thay thế.
Nếu đầu vào là một mảng, hàm này trả về một mảng. Nếu đầu vào là một chuỗi thì hàm này trả về một chuỗi.
Hàm này tương tự như preg_replace()
với một điểm khác biệt: Khi không tìm thấy kết quả khớp cho mẫu trong chuỗi đầu vào, chuỗi đó sẽ không được sử dụng trong giá trị trả về. Trong trường hợp này, nếu đầu vào là một chuỗi thay vì một mảng thì hàm trả về null .
Các chuỗi thay thế có thể chứa các tham chiếu ngược ở dạng \ n hoặc $ n trong đó n là chỉ mục của một nhóm trong mẫu. Trong chuỗi được trả về, các phiên bản của \ n và $ n sẽ được thay thế bằng chuỗi con được so khớp bởi nhóm hoặc, nếu \ 0 hoặc $ 0 được sử dụng, bởi toàn bộ biểu thức.
Cú pháp
preg_filter(pattern, replacement, input, limit, count)
Giá trị tham số
Parameter | Description |
---|---|
pattern | Required. Contains a regular expression indicating what to search for |
replacement | Required. A string which will replace the matched patterns. It may contain backreferences |
input | Required. A string or array of strings in which the replacements are being performed |
limit | Optional. Defaults to -1, meaning unlimited. Sets a limit to how many replacements can be done in each string |
count | Optional. After the function has executed, this variable will contain a number indicating how many replacements were performed |
Chi tiết kỹ thuật
Giá trị trả lại: | Trả về một mảng các chuỗi được thay thế nếu đầu vào là một mảng, một chuỗi có các chuỗi thay thế được thực hiện nếu đầu vào là một chuỗi hoặc null nếu đầu vào là một chuỗi và không tìm thấy kết quả phù hợp nào |
---|---|
Phiên bản PHP: | 5.3.0 |
❮ Tham khảo PHP RegExp