php正则表达式preg_replace只替换一次(有很多匹配项……)
$p=/(123)(456)/$r="结果:$1$2"echopreg_replace($p,$r,"123456123456")输出为:结果为:123456结果为:12...
$p = /(123)(456)/
$r = "结果:$1$2"
echo preg_replace($p,$r,"123456123456")
输出为:结果为:123456结果为:123456
这不是我想要嗯结果,想要的结果为:
结果为:123456123456
即只替换一次,求指点…… 展开
$r = "结果:$1$2"
echo preg_replace($p,$r,"123456123456")
输出为:结果为:123456结果为:123456
这不是我想要嗯结果,想要的结果为:
结果为:123456123456
即只替换一次,求指点…… 展开
3个回答
展开全部
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);
?>
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询