我正在寻找一个php函数,它将采用输入字符串,并通过剥离所有特殊字符只留下字母数字来返回它的净化版本。
我需要第二个函数来执行相同的操作,但只返回字母字符 A-Z。
任何帮助都非常感谢。
警告:请注意,英语不仅限于 A-Z。
尝试这样做以删除除 a-z、A-Z 和 0-9 之外的所有内容:
$result = preg_replace("/[^a-zA-Z0-9]+/", "", $s);
如果字母数字的定义包括外语中的字母和过时的脚本,则需要使用 Unicode 字符类。
尝试这样只留下A-Z:
$result = preg_replace("/[^A-Z]+/", "", $s);
警告的原因是,像简历这样的单词包含与此不匹配的字母。如果要匹配特定的字母列表,请调整正则表达式以包含这些字母。如果要匹配所有字母,请使用注释中提到的相应字符类。é
é
而不是 ,您始终可以使用 PHP 的过滤器函数,并将 函数与 .preg_replacefilter_var()FILTER_SANITIZE_STRING
preg_replace
filter_var()
FILTER_SANITIZE_STRING