2010-10-23 111 views
0

好吧,所以我得到一个脚本,删除“_”,并用空格替换“”,它不起作用,我甚至使用ereg_replace和eregi_replace没有工作,但它向后工作(“”,“_” )PHP preg_replace不工作

非常感谢这里的脚本:

$namefixed = preg_replace("/_/", " ", $name); 

甚至

$namefixed = preg_replace("_", " ", $name); 
+1

你试过['str_replace'](http://php.net/str_replace)吗? – Gumbo 2010-10-23 17:07:21

+0

'var_dump($ name)'看看里面的内容是下划线还是空格... – BoltClock 2010-10-23 17:10:41

+1

由于模式格式不正确,你的第二个'preg_replace'不能正常工作(分隔符分别缺少你的下划线因为开始分隔符和结束分隔符因此丢失)。 – Robert 2010-10-23 17:17:10

回答

2

无需正则表达式,只需使用str_replace()

$namefixed = str_replace("_", " ", $name); 

如果它只能倒退,那么你用下划线替代空间,这只能意味着,有没有在任何$name下划线摆在首位,以取代,或者你在错误的搜索变量...