有没有一种方法或功能可以删除许多添加斜杠,如下所示
\\\\\\\"Oracle DBA\\\\\\\"
使用 stripslashes() 只会删除一个斜线,
我必须使用 preg_replace 吗?像这样
preg_replace(/^\\(.*)/,"",$subject);
与这项工作?
有没有一种方法或功能可以删除许多添加斜杠,如下所示
\\\\\\\"Oracle DBA\\\\\\\"
使用 stripslashes() 只会删除一个斜线,
我必须使用 preg_replace 吗?像这样
preg_replace(/^\\(.*)/,"",$subject);
与这项工作?
如果您真的只想替换反斜杠,那么您需要的只是:
$str = "\\\\\\\"Oracle DBA\\\\\\\"";
$str = str_replace("\\", "", $str);
如果您还希望删除正斜杠:
$str = str_replace(array("\\", "/"), "", $str);
@therefromhere 提出了一个很好的观点:删除所有斜线可能会破坏您的转义。
在这种情况下,消极的前瞻可能会奏效:
$str = preg_replace("/\\\(?!\")/", "", $str);
应该导致 `\"Oracle DBA\"
编辑:做了一个woopsie。x2
您不需要正则表达式来执行此操作。只需使用这个:
$string = str_replace(array('/', '\\'), '', $string);
如果您知道需要删除多少级转义,则可以stripslashes
多次运行该字符串。
如果您不这样做,那么我不确定您是否可以完全正确地执行此操作-您可以删除所有斜线,但显然您会破坏本应存在的任何斜线。