Funkcja preg_filter() PHP
Przykład
Zawijaj liczby w nawiasy na liście ciągów:
<?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);
?>
Definicja i użycie
Funkcja preg_filter()
zwraca ciąg lub tablicę ciągów, w których dopasowania wzorca zostały zastąpione ciągiem zastępczym.
Jeśli dane wejściowe są tablicą, ta funkcja zwraca tablicę. Jeśli dane wejściowe są ciągiem, ta funkcja zwraca ciąg.
Ta funkcja jest podobna do preg_replace()
jednej różnicy: jeśli w ciągu wejściowym nie zostanie znalezione dopasowanie do wzorca, ciąg ten nie zostanie użyty w wartości zwracanej. W tym scenariuszu, jeśli dane wejściowe są ciągiem, a nie tablicą, funkcja zwraca null .
Łańcuchy zastępcze mogą zawierać odwołania wsteczne w postaci \n lub $n, gdzie n jest indeksem grupy we wzorcu. W zwróconym ciągu wystąpienia \n i $n zostaną zastąpione podciągiem, który został dopasowany przez grupę lub, jeśli użyto \0 lub $0, przez całe wyrażenie.
Składnia
preg_filter(pattern, replacement, input, limit, count)
Wartości parametrów
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 |
Szczegóły techniczne
Wartość zwrotu: | Zwraca tablicę zamienionych ciągów, jeśli dane wejściowe były tablicą, ciąg znaków z zamiennikami wykonanymi, jeśli dane wejściowe były ciągiem lub null, jeśli dane wejściowe były ciągiem i nie znaleziono dopasowań |
---|---|
Wersja PHP: | 5.3.0 |
❮ Dokumentacja RegExp PHP