Php/func regex preg filter

来自菜鸟教程
跳转至:导航、​搜索

PHP preg_filter()函数

Reg PHP RegExp参考

将数字括在字符串列表的方括号中:

<?php

  $input = [
  "It is 5 o'clock",
  "40 days",
  "No 
  numbers here",
  "In the year 2000"
];

$result = 
  preg_filter('/[0-9]+/', '($0)', $input);

  print_r($result);
?>

定义和用法

The preg_filter() 函数返回一个字符串或字符串数​​组,其中模式的匹配项已替换为替换字符串。

如果输入是数组,则此函数返回一个数组。如果输入是字符串,则此函数返回字符串。

该功能类似于 preg_replace()

有一个区别:当在输入字符串中找不到与模式的匹配项时,该字符串将不用于返回值。在这种情况下,如果输入是字符串而不是数组,则函数将返回 null .

替换字符串可能包含\ n或$ n形式的反向引用,其中 n 是模式中组的索引。在返回的字符串中,\ n和$ n的实例将替换为该组匹配的子字符串,或者如果使用\ 0或$ 0,则将其替换为整个表达式。

句法

preg_filter(pattern, replacement, input, limit, count)

参数值

参数 描述
pattern 需要。包含一个正则表达式,指示要搜索的内容
replacement 需要。一个字符串,它将替换匹配的模式。它可能包含反向引用
input 需要。一个正在执行替换的字符串或字符串数​​组
limit 可选的。默认值为-1,表示无限制。设置每个字符串可以进行多少次替换的限制
count 可选的。函数执行后,此变量将包含一个数字,指示已执行了多少次替换

技术细节

返回值: 如果输入是一个数组,则返回一个替换字符串数组;如果输入是一个字符串,则返回替换字符串;如果输入是一个字符串且未找到匹配项,则返回null
PHP版本: 5.3.0

Reg PHP RegExp参考