当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


PHP mb_ereg_replace_callback()用法及代码示例


mb_ereg_replace_callback() 函数是 PHP 中的内置函数,用于使用回调函数替换字符串中的正则表达式匹配。

用法:

mb_ereg_replace_callback( $pattern, $callback,$string,$options): string|false|null

参数:该函数接受四个参数,如下所述。

  • $pattern: 模式是用于替换字符串的正则表达式模式。它必须是有效的正则表达式模式。
  • $callback:每场比赛都会调用一个回调函数。该函数应接受一个参数(包含匹配信息的数组)并返回替换字符串。
  • $string: 要搜索的输入字符串。
  • $options: 这是一个可选参数。该参数的可能值有:‘m’(多行)、‘s’(单行)和 ‘r’(匹配时使用 Unicode 规则)。

返回值:该函数是将输入字符串与模式的所有匹配项替换为回调函数的结果,当为 true 时为字符串,当为 false 时将给出错误。当字符串对于当前编码无效时,将返回 null。

示例 1:下面的程序演示了mb_ereg_replace_callback()函数。

PHP


<?php 
    
$string = "I love cats and dogs"; 
$pattern = "[a-z]"; 
  
$callback = function ($match) { 
    return mb_strtoupper($match[0]); 
}; 
  
$replaced_string = mb_ereg_replace_callback($pattern, $callback, $string); 
echo "The string '$string' with matches replaced is '$replaced_string'."; 
  
?>
输出
The string 'I love cats and dogs' with matches replaced is 'I LOVE CATS AND DOGS'.

示例 2:下面的程序演示了mb_ereg_replace_callback()函数。

PHP


<?php 
    
$string = "Hello world"; 
$pattern = "[w]"; 
$replaced_string = mb_ereg_replace_callback( 
    $pattern, 
    function ($matches) { 
        $first_letter = $matches[0]; 
        if (mb_strtolower($first_letter) == "w") { 
            return mb_strtoupper($first_letter); 
        } else { 
            return $first_letter; 
        } 
    }, 
    $string
); 
echo "The string '$string' with matches replaced is ' 
    $replaced_string'."; 
?>

输出:

The string 'Hello world' with matches replaced is 'Hello World'. 

参考:https://www.php.net/manual/en/function.mb-ereg-replace-callback.php



相关用法


注:本文由纯净天空筛选整理自neeraj3304大神的英文原创作品 PHP mb_ereg_replace_callback() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。