PHP preg_replace:不区分大小写的匹配和区分大小写的替换
2022-08-30 15:17:45
我在PHP中使用preg_replace来查找和替换字符串中的特定单词,如下所示:
$subject = "Apple apple";
print preg_replace('/\bapple\b/i', 'pear', $subject);
结果为“梨梨”。
我希望能够做的是以不区分大小写的方式匹配一个单词,但在替换时尊重它的情况 - 给出结果“梨梨”。
以下作品,但对我来说似乎有点冗长:
$pattern = array('/Apple\b/', '/apple\b/');
$replacement = array('Pear', 'pear');
$subject = "Apple apple";
print preg_replace($pattern, $replacement, $subject);
有没有更好的方法来做到这一点?
更新:下面提出的一个很好的查询,为了这个任务的目的,我只想尊重“标题大小写” - 所以一个单词的第一个字母是否是大写的。