# preg_grep

(PHP 4, PHP 5, PHP 7, PHP 8)

preg_grep — 返回匹配模式的数组条目

### 说明

preg_grep(string `$pattern`, array `$array`, int `$flags` = 0): array|false

返回给定数组`array`中与模式`pattern` 匹配的元素组成的数组。

### 参数

`pattern`

  要搜索的模式，字符串形式。

`array`

  输入数组。

`flags`

  如果设置为`PREG_GREP_INVERT`，这个函数返回输入数组中与 给定模式`pattern` 不匹配的元素组成的数组。

### 返回值

返回使用`array`中key做索引的数组。 或者在失败时返回 `false`。

### 错误／异常

如果传递的正则表达式无法正常解析，会发出 `E_WARNING`。

### 示例

示例 #1 preg_grep() 示例

`<?php
$array = [ "4", M_PI, "2.74", 42 ];
// 返回所有包含浮点数的元素
$fl_array = preg_grep("/^(\d+)?\.\d+$/", $array);
var_dump($fl_array);
?>`

### 参见

- PCRE 模式
- preg_quote() - 转义正则表达式字符
- preg_match_all() - 执行一个全局正则表达式匹配
- preg_filter() - 执行一个正则表达式搜索和替换
- preg_last_error() - 返回最后一个PCRE正则执行产生的错误代码

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open