preg_replace
在PHP中的正确语法是什么?
$search = preg_replace('/()/','',$search);
感谢
假设要从$search
字符串中删除(
和)
:
$search = preg_replace('/(|)/','',$search);
我认为最快的方法是使用strtr
函数,如下所示:
$search = strtr($search, array('(' => '', ')' => ''));
以下是我的一个小型现场测试结果:
preg_replace("/(|)/", "", $str): 1.590735912323
preg_replace('/[()]/', '', $str): 1.3762638568878
strtr($str, array('(' => '', ')' => '')): 0.84079194068909
str_replace("(", "", str_replace(")", "", $str)): 0.80222821235657
正如J·布鲁尼所指出的,后两者几乎完全相同。
你是这样说的吗?
$search = preg_replace('/[()]/', '', $search);
这将去掉所有括号,而不考虑配对。
这是正确的语法,尽管preg_replace用于正则表达式,但如果您只想替换()
,那么str_replace会快几倍。
如果你想更换(
或)
,无论它们在哪里,你都可以使用
preg_replace("/(|)/", "", $str);