Как я могу обнаружить незападных персонажей?

Я хочу отключить определенный вход UTF-8 (серверный), например. восточные языки, где пример ввода может быть "伊".

Тем не менее, я хочу продолжать поддерживать другие латинские или латинские символы, такие как валлийский ŵ и ŷ, поэтому проверка на латинский-1 невозможно.

Каковы мои варианты? (если язык специфичен, предпочитается PHP)

Большое спасибо.


Рассуждение: часто требуется поддержка браузера для множества незападных символов (например, в другом браузере я вижу только поле в вопросе выше), поэтому для таких вещей, как отображаемые имена, иногда бывает необходимо ограничить его, даже если он не подходит для органов сообщений

Ответы

Ответ 1

Просто сделай

preg_match('/[^\\p{Common}\\p{Latin}]/u', $string)

где $string - строка UTF-8. Это вернет "1", если есть нелатинские символы и в противном случае вернет "0".

Пример:

var_dump(preg_match('/[^\\p{Common}\\p{Latin}]/u', 'sf..ŷaás??'));  //int(0)
var_dump(preg_match('/[^\\p{Common}\\p{Latin}]/u', 'sf..ŷݤaás??')); //int(1)