Fonction PHP preg_filter()
Exemple
Mettez les nombres entre parenthèses dans une liste de chaînes :
<?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);
?>
Définition et utilisation
La preg_filter()
fonction renvoie une chaîne ou un tableau de chaînes dans lequel les correspondances du modèle ont été remplacées par la chaîne de remplacement.
Si l'entrée est un tableau, cette fonction renvoie un tableau. Si l'entrée est une chaîne, cette fonction renvoie une chaîne.
Cette fonction est similaire à preg_replace()
à une différence près : Lorsqu'une correspondance pour le modèle n'est pas trouvée dans une chaîne d'entrée, la chaîne ne sera pas utilisée dans la valeur de retour. Dans ce scénario, si l'entrée est une chaîne au lieu d'un tableau, la fonction renvoie null .
Les chaînes de remplacement peuvent contenir des références arrière sous la forme \n ou $n où n est l'index d'un groupe dans le modèle. Dans la chaîne renvoyée, les instances de \n et $n seront remplacées par la sous-chaîne qui correspondait au groupe ou, si \0 ou $0 sont utilisés, par l'expression entière.
Syntaxe
preg_filter(pattern, replacement, input, limit, count)
Valeurs des paramètres
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 |
Détails techniques
Valeur de retour : | Renvoie un tableau de chaînes remplacées si l'entrée était un tableau, une chaîne avec des remplacements effectués si l'entrée était une chaîne ou null si l'entrée était une chaîne et qu'aucune correspondance n'a été trouvée |
---|---|
Version PHP : | 5.3.0 |
❮ Référence PHP RegExp