我想将主题字符串 'r r' 中的模式字符串 '/r/' 替换为预先确定的替换,例如 '"\\23"' 和 '[4]'。所以(只向您展示我的替换数组的一个子集)我尝试:
$subject = 'r r';
$replacements = array('"\\23"', '[4]');
$replacements = array_map('preg_quote', $replacements);
print_r($replacements);
foreach($replacements as $replacement){
$subject = preg_replace('/r/', $replacement, $subject, 1);
}
echo $subject;
我想要的字符串是 '"\\23" [4]',但我得到的是 '"\23" \[4\]',它既缺少字符又具有附加字符。
PHP 是否有一个可以在这里工作的转义函数?我该怎么做呢?
注意:如果没有 preg_quote 行,结果是 '"" [4]'。