替换=“;文本“;其中=“;文本";使用Preg_Replace


Replace ="Text" with ="Text" using Preg_Replace

我想替换以下内容:

="Dark4Red"

带有

='"Dark4Red'"

=符号和双引号是固定的="…"我只需要在双引号之前加上斜杠。

$content = preg_replace('/="[^a-zA-Z#0-9]"/', '='"[^a-zA-Z#0-9]'"', $line);

上述解决方案不起作用。知道吗?

addslashes怎么样?

除此之外,您似乎还没有阅读过preg_replace手册页上的任何示例——如果您阅读过,您就会知道您捕获了一个带括号的子模式(在本例中是引号的内容),并使用$1将它们放在替换字符串中。

您可以使用

$str = '"Text"';
str_replace('"',''"', $str);
$content = preg_replace('#="(.*?)"#', '='"'1'"', $line);

已解决。