Fonction preg_grep
La fonction preg_grep renvoie un tableau des éléments qui correspondent à l'expression régulière donnée. Le premier paramètre de la fonction accepte une chaîne avec l'expression régulière, et le second - le tableau à rechercher. Le troisième paramètre facultatif détermine s'il faut renvoyer les éléments qui ne correspondent pas à l'expression régulière.
Syntaxe
preg_grep(pattern, array, [flags]);
Drapeaux
| Drapeau | Description |
|---|---|
PREG_GREP_INVERT |
Inverse le résultat - renvoie les éléments qui NE correspondent PAS au motif. |
PREG_GREP_NO_ERROR |
Ne génère pas d'erreur en cas d'expression régulière incorrecte (PHP 8.1+). |
Exemple
Trouvons tous les éléments du tableau qui commencent par un chiffre :
<?php
$arr = ['a1', '2b', 'c3', '4d', 'e5'];
$res = preg_grep('/^\d/', $arr);
var_dump($res);
?>
Résultat de l'exécution du code :
['2b', '4d']
Exemple
Utilisons le drapeau PREG_GREP_INVERT pour obtenir les éléments qui NE correspondent PAS à l'expression régulière :
<?php
$arr = ['a1', '2b', 'c3', '4d', 'e5'];
$res = preg_grep('/^\d/', $arr, PREG_GREP_INVERT);
var_dump($res);
?>
Résultat de l'exécution du code :
['a1', 'c3', 'e5']
Exemple
Trouvons tous les éléments du tableau contenant uniquement des chiffres :
<?php
$arr = ['123', 'abc', '45', 'de', '678'];
$res = preg_grep('/^\d+$/', $arr);
var_dump($res);
?>
Résultat de l'exécution du code :
['123', '45', '678']
Voir aussi
-
la fonction
preg_match,
qui effectue une vérification de correspondance avec une expression régulière -
la fonction
preg_replace,
qui effectue une recherche et un remplacement par expression régulière