我正在使用PHP中的preg_replace函数来查找和替换字符串中的特定单词,例如:
$subject = "Apple apple";
print preg_replace('/\bapple\b/i', 'pear', $subject);
这将会得到结果为“pear pear”。
我希望能够以不区分大小写的方式匹配一个单词,但在替换时保留它的大小写 - 得到结果为“Pear pear”。
以下方法可行,但对我来说有点冗长:
$pattern = array('/Apple\b/', '/apple\b/');
$replacement = array('Pear', 'pear');
$subject = "Apple apple";
print preg_replace($pattern, $replacement, $subject);
有没有更好的方法来做这件事?
更新:根据下面提出的优秀问题,为了完成此任务,我只想尊重“标题大小写”-无论单词的第一个字母是否大写。
'applE'
和'pear'
,那么呢? - Alma Do