我有一个结构类似于'aba aaa cba sbd dga gad aaa cbz'
的字符串。字符串每次都可能有点不同,因为它来自外部源。
我想只替换第一次出现的'aaa'
而不是其他的{{1}}。有可能吗?
答案 0 :(得分:97)
preg_replace的可选第四个参数是limit
:
preg_replace($search, $replace, $subject, 1);
答案 1 :(得分:10)
您可以使用limit
的{{1}}参数进行设置,并将其设置为preg_replace
,以便最多可以进行一次替换:
1
答案 2 :(得分:0)
例如,out $ content是:
START
FIRST AAA
SECOND AAA
1)如果您使用:
$content = preg_replace('/START(.*)AAA/', 'REPLACED_STRING', $content);
它将改变从START到最后一个AAA的所有内容,您的结果将是:
REPLACED_STRING
2)如果您使用:
$content = preg_replace('/START(.*?)AAA/', 'REPLACED_STRING', $content);
您的结果将如下:
REPLACED_STRING
SECOND AAA