Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从PHP字符串中删除除字母以外的所有内容_Php_Regex_String_Replace - Fatal编程技术网

从PHP字符串中删除除字母以外的所有内容

从PHP字符串中删除除字母以外的所有内容,php,regex,string,replace,Php,Regex,String,Replace,除了字母外,我如何删除字符串中的所有内容?我有一个名字的输入字段。在PHP中,您可以使用(如@rczajka和@mario所建议的): $new_string = ereg_replace("[^A-Za-z]", "", $string ); 工作示例: 您可能需要签出此项用于此项的工具称为regexp,意思是正则表达式。你的基本上接受[a-zA-Z],并去除所有其他内容。然而,我相信你在这里犯了一个设计错误。玛丽·马德琳和她的朋友N'gombe怎么样?我的名字叫拉多斯·奥-除了[a-zA-

除了字母外,我如何删除字符串中的所有内容?我有一个名字的输入字段。

在PHP中,您可以使用(如@rczajka和@mario所建议的):

$new_string = ereg_replace("[^A-Za-z]", "", $string );
工作示例:


您可能需要签出此项

用于此项的工具称为regexp,意思是正则表达式。你的基本上接受[a-zA-Z],并去除所有其他内容。然而,我相信你在这里犯了一个设计错误。玛丽·马德琳和她的朋友N'gombe怎么样?我的名字叫拉多斯·奥-除了[a-zA-Z]还有其他字母。此外,如果出于某种原因想要限制输入,请用户修复它,而不是自己研磨它。如果你的以美国为中心的数据库没有“ł”的话,我可以是Radoslaw或Radek,但如果你让我成为Radosaw,我不会喜欢你。正如@rczajka所指出的,你必须在互联网上更加灵活。只允许ASCII字母将使许多用户失败。而是使用
preg\u replace('/\PL/u','.$str)
来过滤非字母。到目前为止,您尝试了哪些不起作用的方法?这不是一个要求人们为你工作的网站;这是为了在你试图做的不起作用的事情上得到帮助。你必须首先自己付出一些努力。该是接受答案的时候了……强烈建议你不要使用这种方法:从PHP.net开始,这个函数在PHP5.3.0中就被弃用了。非常不鼓励依赖此功能。()使用它将抛出E_通知错误。哦,对不起,我不知道它已被弃用。你可以忽略这个答案。从PHP5.3.0Hmmm开始就不推荐了,我不知道。为什么我们要升级那些甚至不起作用的未经开发的OneLiner?@Martin我有一个打字错误,写的是“Z”而不是“Z”。但我们都会打字,包括你。(代码板中的正则表达式中没有“^”字符。)对于没有特殊正则表达式技能的人来说,这一个更容易调整。。和我一样,你的示例链接不再有效,但我已经测试过了,它可以很好地使用UTF-8字符串。
$new_string = preg_replace('/[^a-z]/i','',$old_string);
preg_replace('/\PL/u', '', $str)