[英]PHP how to replace \\ with \ using preg_replace
我想在PHP中用\\
替换\\\\
我试过这段代码,但它不起作用吗?
$var= preg_replace('/\\\\/', "\\", $var);
非常感谢
请改用stripcslashes()或stripslashes() 。 这里没有正则表达式的充分理由,另一方面,它们比内置函数更昂贵。
您是否有特殊原因要使用preg_replace? 你应该使用str_replace:
php > echo str_replace("\\\\", "\\", "I\\\\'ve had");
I\'ve had
问题是,与preg_replace函数,你必须逃离\\
的PHP解释器,你必须逃脱\\
再次为正则表达式的解释。 所以基本上,你必须写这个:
php > echo preg_replace("/\\\\\\\\/", "\\", "I\\\\'ve had");
I\'ve had
因为要在php字符串中写一个\\
,所以必须写\\\\
,但是必须对regexp的解释器都进行转义,然后它变成\\\\\\\\
。 这是一个\\
,所以你必须重复两次。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.