从字符串中删除所有反斜杠 - php - regex

时间:2012-12-16 18:02:03

标签: php regex str-replace

我的字符串是

$str = '<img src="\"images/hai.jpg\"" alt="" /> Text <img src="\"images/hai.jpg\"" alt="" />';

我想从字符串中删除所有\“。

3 个答案:

答案 0 :(得分:8)

我认为你不是在寻找正则表达式,而是在寻找stripslashes($str)方法。

编辑:从评论中我知道你只会在没有任何内容的情况下替换\",你应该在这里使用一个简单的str_replace,正如@Gumbo所说:

$str = ...;
$newStr = str_replace('\"', '', $str);

echo $newStr;

你可以使用正则表达式,但pReg库不是很快,如果你能找到一个str_ *或数组变体,我总是建议使用它而不是preg _ *

答案 1 :(得分:0)

使用stripslashes($str)并不总是从字符串中删除所有\。如果存在\\存在的实例,它将成为一个斜杠,而不是0.要全部删除它们,最好的方法是使用str_replace

并且如OP所述,他希望删除需要使用/"

进行的str_replace

答案 2 :(得分:0)

这看起来像是通过多个转义序列的数据字符串。您可能希望查找反斜杠和重复引号的根本原因。在PHP中,魔术引号可能会导致这种情况。如果你能够阅读这篇文章,它将解释这些问题。

http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/PHP/A_6630-Magic-Quotes-a-bad-idea-from-day-one.html

HTH,~Ray