У меня есть целая строка неверных данных. Я пытаюсь вычеркнуть все, что не является тем, что обычно вводит пользователь со стандартной английской клавиатурой, а также добавляет несколько испанских букв для ударов ногами:
$string = "ó�Ⲃⲟⲟ?ⲉⲁⲛ ⲁⲛⲇ Ⲓⲛϯⲉ?ⲉꞅ?HôpitüD�sseldor ";
$re = '/[^\A-Za-z0-9@\.\' ;<>,-_\|!@#+=\[\]{}$%^&:*()"ñáéíóú]/mu';
$string = preg_replace($re, '', $string);
Согласно regex101, я должен получить это как мой результат:
ó HpitDsseldor
но вместо этого я получаю следующее:
ó???????? ??? ????????HpitD?sseldor
Что заставляет все эти ?
оставаться в очищенном выводе?