preg_grep

(PHP 4, PHP 5)

preg_grepВозвращает массив вхождений, которые соответствуют шаблону

Описание

array preg_grep ( string $pattern , array $input [, int $flags = 0 ] )

Возвращает массив, состоящий из элементов входящего массива input, которые соответствуют заданному шаблону pattern.

Список параметров

pattern

Искомый шаблон, строка.

input

Входящий массив.

flags

В случае, если установлен в PREG_GREP_INVERT, функция preg_grep() возвращает те элементы массива, которые не соответствуют заданному шаблону pattern.

Возвращаемые значения

Возвращает массив, индексированный ключами из массива input.

Список изменений

Версия Описание
4.2.0 Добавлен параметр flags.
4.0.4

До этой версии, возвращаемый массив индексировался ключами вне зависимости от массива input.

Если вы хотите воспроизвести это поведение, используйте функцию array_values() на полученных значениях для переиндексации.

Примеры

Пример #1 Пример использования preg_grep()

<?php
// Возвращает все элементы массива,
// содержащие числа с плавающей точкой
$fl_array preg_grep("/^(\d+)?\.\d+$/"$array);
?>

Смотрите также

Коментарии

Run a match on the array's keys rather than the values:

<?php

function preg_grep_keys$pattern$input$flags )
{
   
$keys preg_grep$patternarray_keys$input ), $flags );
   
$vals = array();
    foreach ( 
$keys as $key )
    {
       
$vals[$key] = $input[$key];
    }
    return 
$vals;
}

?>
2010-01-21 17:56:12
http://php5.kiev.ua/manual/ru/function.preg-grep.html
Автор:
A shorter way to run a match on the array's keys rather than the values:

<?php
function preg_grep_keys($pattern$input$flags 0) {
    return 
array_intersect_key($inputarray_flip(preg_grep($patternarray_keys($input), $flags)));
}
?>
2013-03-15 00:54:09
http://php5.kiev.ua/manual/ru/function.preg-grep.html
A very simple example to match multiple "."(dot) in an array value:-

<?php

     $array 
= array("23.32","22","12.009","23.43.43");
     
print_r(preg_grep("/^(\d+)?\.\d+\.\d+$/",$array));

?>
2014-10-05 17:02:26
http://php5.kiev.ua/manual/ru/function.preg-grep.html
Автор:
An even shorter way to run a match on the array's keys rather than the values:

<?php
function preg_grep_keys($pattern$input$flags 0) {
    return 
array_flippreg_grep($patternarray_flip($input), $flags ) );
}
?>
2017-03-15 23:26:59
http://php5.kiev.ua/manual/ru/function.preg-grep.html

    Поддержать сайт на родительском проекте КГБ