Funksie preg_grep

Die funksie preg_grep gee 'n skikking van elemente terug wat ooreenstem met die gegewe regulêre uitdrukking. Die eerste parameter is 'n string met die regulêre uitdrukking, en die tweede is die skikking om in te soek. Die derde, opsionele parameter bepaal of elemente wat nie met die regulêre uitdrukking ooreenstem nie, teruggegee moet word.

Sintaksis

phppreg_grep(pattern, array, [flags]);

Vlaggies

Vlaggie Beskrywing
PREG_GREP_INVERT Keer die resultaat om - gee elemente terug wat NIE met die patroon ooreenstem NIE.
PREG_GREP_NO_ERROR Genereer nie 'n fout by 'n inkorrekte regulêre uitdrukking nie (PHP 8.1+).

Voorbeeld

Laat ons alle elemente van die skikking vind wat met 'n syfer begin:

php<?php
  $arr = ['a1', '2b', 'c3', '4d', 'e5'];
  $res = preg_grep('/^\d/', $arr);
  var_dump($res);
?>

Resultaat van die kode-uitvoering:

php['2b', '4d']

Voorbeeld

Gebruik die vlaggie PREG_GREP_INVERT om elemente te kry wat NIE met die regulêre uitdrukking ooreenstem NIE:

php<?php
  $arr = ['a1', '2b', 'c3', '4d', 'e5'];
  $res = preg_grep('/^\d/', $arr, PREG_GREP_INVERT);
  var_dump($res);
?>

Resultaat van die kode-uitvoering:

php['a1', 'c3', 'e5']

Voorbeeld

Vind alle elemente van die skikking wat slegs syfers bevat:

php<?php
  $arr = ['123', 'abc', '45', 'de', '678'];
  $res = preg_grep('/^\d+$/', $arr);
  var_dump($res);
?>

Resultaat van die kode-uitvoering:

php['123', '45', '678']

Sien ook

  • die funksie preg_match,
    wat 'n toets vir ooreenstemming met 'n regulêre uitdrukking uitvoer
  • die funksie preg_replace,
    wat soek en vervang volgens 'n regulêre uitdrukking uitvoer