📜  php preg 替换 - PHP (1)

📅  最后修改于: 2023-12-03 15:18:20.777000             🧑  作者: Mango

PHP preg替换介绍

简介

在 PHP 中,preg_replace() 函数用于执行一个正则表达式搜索并替换操作。

正则表达式是一种强大的文本匹配工具,可以用于搜索、替换、匹配、验证等。

语法
preg_replace($pattern, $replacement, $subject, $limit = -1, &$count = null)
参数
  • $pattern:必需。申明搜索的规则,可以是字符串或正则表达式。
  • $replacement:必需。申明替换的文本或回调函数。
  • $subject:必需。申明需要搜索替换的文本或数组。
  • $limit:可选。指定最多替换几个匹配,默认是 -1(替换全部匹配)。如果指定为 0,则只替换第一个匹配。
  • $count:可选。指定用于存储替换次数的变量。
返回值

如果找到匹配,则返回替换后的字符串;如果没有找到匹配,则返回原始的 $subject

例子
替换字符串
$string = "I love PHP";
$newString = preg_replace("/PHP/", "programming", $string);

echo $newString; // 输出 "I love programming"
替换数组
$array = array("I love PHP", "PHP is great");
$newArray = preg_replace("/PHP/", "programming", $array);

print_r($newArray); 

// 输出
// Array
// (
//     [0] => I love programming
//     [1] => programming is great
// )
使用回调函数
$string = "I love PHP";
$newString = preg_replace_callback("/(PHP)/", function($match) {
    return strtoupper($match[0]);
}, $string);

echo $newString; // 输出 "I love PHP"
注意事项
  • 如果正则表达式不合法,preg_replace() 函数会返回 null 并生成一个警告。
  • 默认情况下,preg_replace() 函数区分大小写。如果需要不区分大小写,则可以在正则表达式中添加 i 模式修饰符:/pattern/i
  • 查看更多关于正则表达式的信息可以参考 PHP PCRE 函数