删除字符之前(如退格键)


Remove before character (like backspace)

我有一些这样的文字:"我是高特[BS][BS][BS]oat"

它应该看起来像这样:"我是一只山羊"

如何使用"[BS]"作为"退格键"?因此,请删除退格键之前的字符。我尝试了preg_replace但它只替换了 1 个退格键。

有人可以帮忙吗?

我试过这个:

$text = preg_replace('/.{1}'[BS']/', '', $text);

但这仅适用于 1 [BS]。

我可以看到有两种方法可以做到这一点。

"简单但漫长"的方式:

do {
    $text = preg_replace("/.'[BS']/","",$text,-1,$c);
} while($c);

"巫毒快捷方式"方式:

$text = preg_replace("/.(?R)*'[BS']/","",$text);