10

您好需要将功能更改ereg_replace("[\]", "", $theData)为 preg_replace

4

4 回答 4

22

要移植ereg_replacepreg_replace您需要将正则表达式放在一对分隔符之间

[\]此外,您的regx无法用于 preg_replace,因为它正在\转义关闭的 char 类]

正确的端口是

preg_replace('/[\\\]/','',$theData) 

此外,由于 char 类只有一个 char,因此不需要 char 类,您可以说:

preg_replace('/\\\/','',$theData) 

由于您只替换一个字符,因此不建议使用正则表达式。您应该使用str_replaceas 进行简单的文本替换:

str_replace('\\','',$data);
于 2010-09-06T07:10:19.690 回答
2
str_replace("\\","",$theData);

但我严重怀疑你是否需要更换。很可能你需要一些其他的操作。
这个替换是为了什么?

于 2010-09-06T06:56:51.623 回答
0
preg_replace("/\\\/", "", $theData);
于 2010-09-06T07:09:51.050 回答
0

我使用这个 sed 自动将 ereg_replace 替换为 preg_replace 并放入所需的斜杠。假设第一个正则表达式中没有 \"

 sed -i 's#ereg_replace("\([^"]*\)"#preg_replace("/\1/"#g' *.php
于 2015-03-10T18:43:38.700 回答