当前位置: 首页> 函数类别大全> preg_replace_callback

preg_replace_callback

执行一个正则表达式搜索并且使用一个回调进行替换
名称:preg_replace_callback
分类:正则处理PCRE
所属语言:php
一句话介绍:给定表达式和回调,返回字符串,其中表达式的所有匹配项都被替换为回调函数返回的子字符串。

定义和用法

preg_replace_callback() 函数给定一个表达式和一个回调函数,返回一个字符串,其中表达式的所有匹配项都被回调函数返回的子字符串替换。

实例

计算句子中所有单词的字母数:

<?php
function countLetters($matches) {
  return $matches[0] . '(' . strlen($matches[0]) . ')';
}

$input = "Welcome to W3School.com.cn!";
$pattern = '/[a-z0-9\.]+/i';
$result = preg_replace_callback($pattern, 'countLetters', $input);
echo $result;
?>

亲自试一试

语法

preg_replace_callback(pattern, replacements, input, limit, count)
参数 描述
pattern 必需。指示要搜索的内容的正则表达式或正则表达式数组。
replacements

必需的。一个返回替换项的回调函数。

回调函数有一个参数,该参数包含一个匹配项的数组。

数组的第一个元素包含整个表达式的匹配项,而其余元素则包含表达式中每个组的匹配项。

input 必需。在其上进行替换的字符串或字符串数组。
limit

可选。默认为 -1,表示无限制。

设置在每个字符串中可以进行的替换次数的限制。

count 可选。函数执行后,此变量将包含一个数字,指示进行了多少次替换。
同类函数
  • 转义正则表达式字符 preg_quote

    preg_quote

    转义正则表达式字符
  • 执行正则表达式匹配 preg_match

    preg_match

    执行正则表达式匹配
  • 执行一个正则表达式的搜索和替换 preg_replace

    preg_replace

    执行一个正则表达式的搜索和替换
  • 执行全局正则表达式匹配 preg_match_all

    preg_match_all

    执行全局正则表达式匹配
  • 执行一个正则表达式搜索并且使用一个回调进行替换 preg_replace_callback

    preg_replace_callback

    执行一个正则表达式搜索并且使用一个回调进
  • 执行正则表达式搜索和替换 preg_filter

    preg_filter

    执行正则表达式搜索和替换
  • 通过一个正则表达式分隔字符串 preg_split

    preg_split

    通过一个正则表达式分隔字符串
  • 返回匹配模式的数组条目 preg_grep

    preg_grep

    返回匹配模式的数组条目
热门文章