Functie preg_grep
De functie preg_grep retourneert een array met elementen die overeenkomen met de opgegeven reguliere expressie. De eerste parameter accepteert een string met de reguliere expressie, en de tweede - de array om in te zoeken. De derde optionele parameter bepaalt of elementen die niet overeenkomen met de reguliere expressie moeten worden geretourneerd.
Syntaxis
preg_grep(pattern, array, [flags]);
Flags
| Flag | Beschrijving |
|---|---|
PREG_GREP_INVERT |
Keert het resultaat om - retourneert elementen die NIET overeenkomen met het patroon. |
PREG_GREP_NO_ERROR |
Genereert geen fout bij incorrecte reguliere expressie (PHP 8.1+). |
Voorbeeld
Laten we alle array-elementen vinden die beginnen met een cijfer:
<?php
$arr = ['a1', '2b', 'c3', '4d', 'e5'];
$res = preg_grep('/^\d/', $arr);
var_dump($res);
?>
Resultaat van code-uitvoering:
['2b', '4d']
Voorbeeld
Laten we de PREG_GREP_INVERT flag gebruiken om elementen te krijgen die NIET overeenkomen met de reguliere expressie:
<?php
$arr = ['a1', '2b', 'c3', '4d', 'e5'];
$res = preg_grep('/^\d/', $arr, PREG_GREP_INVERT);
var_dump($res);
?>
Resultaat van code-uitvoering:
['a1', 'c3', 'e5']
Voorbeeld
Laten we alle array-elementen vinden die alleen cijfers bevatten:
<?php
$arr = ['123', 'abc', '45', 'de', '678'];
$res = preg_grep('/^\d+$/', $arr);
var_dump($res);
?>
Resultaat van code-uitvoering:
['123', '45', '678']
Zie ook
-
functie
preg_match,
die controleert op overeenkomst met een reguliere expressie -
functie
preg_replace,
die zoekt en vervangt met behulp van een reguliere expressie