我试图使用ereg_replace()
只允许上,下字母和空格,因为我会用逗号分解它。ereg_replace删除空格
我有下面的代码,但它是删除空格,我可以弄清楚如何允许,通过。
$type = ereg_replace("[^A-Za-z\.-:/-]", "", $string);
另外我知道ereg_replace()
已被弃用,但这是关闭我已经得到。
我试图使用ereg_replace()
只允许上,下字母和空格,因为我会用逗号分解它。ereg_replace删除空格
我有下面的代码,但它是删除空格,我可以弄清楚如何允许,通过。
$type = ereg_replace("[^A-Za-z\.-:/-]", "", $string);
另外我知道ereg_replace()
已被弃用,但这是关闭我已经得到。
使用以下
$new_string = preg_replace('/[^A-Za-z ,]/', '', $string);
这将使A-Z,A-Z,逗号和空格,并删除一切。
注意:其他的一切包括重音符号等
不要使用不推荐的功能,它们因为某种原因而被弃用。如果你希望只允许A-Z,A-Z和空格,请使用:
preg_replace('~[^a-z ]~i', '', $subject);
编辑:根据您的评论“它仍然是去除逗号和空格”,我想你想的逗号被也允许的。在这种情况下,使用:
preg_replace('~[^a-z, ]~i', '', $subject);
只是逃避逗号和空格
$type = ereg_replace("[^A-Za-z\.-:/-\,\ ]", "", $string);
结果相同的转换可以了,为什么你使用`ereg_replace()函数预浸
$type = preg_replace("/[^A-Za-z\.-:\/\,\ ]+/", "", $string);
谢谢你帮助我!同时也感谢你提供替代品,除了争吵之外它已被废弃,正如我向其他人指出的那样。 –
请注意,您仍然需要做一些调整,因为我只复制了现有的正则表达式,并添加了空格和逗号......请查看其他贡献者,以了解如何调整表达式,如果您需要对其进行优化进一步。 – Dave
'因为**'preg_replace()'**可以做到这一点? – Florent
“另外我知道ereg_replace()已被弃用,但这是我得到的结束。”上班。 –
所以你使用ereg代替preg的唯一原因是_to work_?对不起,我不明白... – Florent