$p = /(123)(456)/
$r = "结果:$1$2"
echo preg_replace($p,$r,"123456123456")
输出为:结果为:123456结果为:123456
这不是我想要嗯结果,想要的结果为:
结果为:123456123456
即只替换一次,求指点……
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);
?>
在 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);
?>
温馨提示:答案为网友推荐,仅供参考