preg_filter()

创建于 2024-12-03 / 26
字体: [默认] [大] [更大]

❮ PHP 正则表达式参考

实例

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

<?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);
?> 亲自试一试 »

定义和用法

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

如果输入是一个数组,这个函数返回一个数组。 如果输入是一个字符串,那么这个函数返回一个字符串。

此函数类似于 preg_replace(),但有一个区别:当模式匹配时 未在输入字符串中找到,该字符串将不会用于返回值。 在这种情况下,如果输入是字符串而不是数组,则函数返回 null

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


语法

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

参数值

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

技术细节

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

❮ PHP 正则表达式参考
0 人点赞过