Ответ 1
Предупреждение. Обратите внимание: английский не ограничивается только A-Z.
Попробуйте this удалить все, кроме a-z, A-Z и 0-9:
$result = preg_replace("/[^a-zA-Z0-9]+/", "", $s);
Если ваше определение буквенно-числовой буквы включает буквы на иностранных языках и устаревшие скрипты, вам нужно будет использовать классы символов Unicode.
Попробуйте this оставить только A-Z:
$result = preg_replace("/[^A-Z]+/", "", $s);
Причиной предупреждения является то, что слова типа резюме содержат букву é
, которая не будет соответствовать этому. Если вы хотите сопоставить определенный список букв, настройте регулярное выражение, чтобы включить эти буквы. Если вы хотите совместить все буквы, используйте соответствующие классы символов, как указано в комментариях.