我还没有在php中做正则表达式。关于正则表达式在php中
我需要用空字符('')替换三个反斜杠(\\\)。
因此,任何人都可以帮我解决这个问题在PHP?
例子:
\\\与空( '')
取代\\\\替换\
感谢球员的答复,但它仍然是不工作。
我还没有在php中做正则表达式。关于正则表达式在php中
我需要用空字符('')替换三个反斜杠(\\\)。
因此,任何人都可以帮我解决这个问题在PHP?
例子:
\\\与空( '')
取代\\\\替换\
感谢球员的答复,但它仍然是不工作。
这应做到:
preg_replace('/\\\\\\\\\\\\/', "\x00", $input)
每个\
需要转义为PHP作为\\
并再次PCRE为\\\\
,所以三个反斜线\\\\\\\\\\\\
。
你可能想用preg_quote
,而不是工作:
preg_replace('/'.preg_quote('\\\\\\', '/').'/', "\x00", $input)
我认为OP的意思是空字符串'''',当他写»空字符« - 虽然我也被这个位弄糊涂 – knittl 2012-01-28 14:15:22
为什么不str_replace()
?
的模式是如此简单,str_replace()
没有工作
$new = str_replace('\\\\\\', '', $old);
您需要模式字符串中的六个反斜杠。在你的版本中,第一对形成一个反斜杠,然后'\'嵌入一个单引号。那么没有字符串终止符。 – Borodin 2012-01-28 14:01:32
为什么正则表达式?正则表达式只有在你想保持长度大于3的反斜杠时才有意义。即删除\\\但保持\\\\。 – 2012-01-28 14:01:56