php正则表达式preg_replace只替换一次(有很多匹配项……)
发布网友
发布时间:2023-07-02 00:12
我来回答
共3个回答
热心网友
时间:2023-07-09 16:11
mixed preg_replace ( mixed pattern, mixed replacement, mixed subject [, int limit] )
在 subject 中搜索 pattern 模式的匹配项并替换为 replacement。如果指定了 limit,则仅替换 limit 个匹配,如果省略 limit 或者其值为 -1,则所有的匹配项都会被替换。
如果要只一次,加上limit即可
<?php
$p = '/(123)(456)/';
$r = "结果:$1$2";
echo preg_replace($p,$r,"123456123456",1);
?>
这样更易理解
<?php
$p = '/(123)(456)/';
$r = "结果:$1aaaaaa$2";
echo preg_replace($p,$r,"123456123456",1);
?>
热心网友
时间:2023-07-09 16:12
preg_replace($p,$r,"123456123456",1)
热心网友
时间:2023-07-09 16:12
楼上正解。