在php中替换重复的字符串

时间:2015-10-04 16:04:12

标签: php

我有一个字符串,有时会有

的实例
This is Hello World Hello Thanks

注意Hello重复了两次,我想替换Hello的第一个“出现”并将其设为

This is World Hello Thanks

有没有办法可以检查是否有一个单词重复两次,并删除第一个出现并获得最后一个字符串。

我唯一能想到的是使用爆炸,并通过分隔符“白色空间”获取每个单词。

然后我不知道如何继续计算出现和删除重复的单词。

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

根据这个问题:Using str_replace so that it only acts on the first match?

$str = 'abcdef abcdef abcdef';
// pattern, replacement, string, limit
echo preg_replace('/abc/', '123', $str, 1); // outputs '123def abcdef abcdef'

所以你可以使用:

preg_replace('#Hello#', '', $input, 1)

要计算Hello出现的次数,请参阅http://php.net/manual/en/function.substr-count.php

$ count = substr_count($ input,' Hello');