Php проверить, есть ли строка в китайских символах

У меня есть строка $str и я хочу проверить, имеет ли ее содержимое китайские символы или нет (true / false)

 $str = "赕就可消垻,只有当所有方块都被消垻时才可以过关"; 

не могли бы вы мне помочь?

Благодаря! Адриан

Solutions Collecting From Web of "Php проверить, есть ли строка в китайских символах"

Вы можете использовать класс символов юникода http://www.regular-expressions.info/unicode.html

 preg_match("/\p{Han}+/u", $utf8_str); 

Это просто проверяет наличие хотя бы одного китайского персонажа. Вы можете захотеть расширить его, если хотите совместить полную строку.

Ответ @mario прав!

Для китайских символов используйте это регулярное выражение: /[\x{4e00}-\x{9fa5}]+/u

И не забывайте модификатор u !!!

Ссылка на ссылку на модификатор u

TKS to mario

Эта ссылка на предыдущий вопрос об идентификации упрощенного или традиционного китайского языка может дать вам некоторые идеи … вы на самом деле не указываете, что вы имеете в виду, и я не знаю китайцев достаточно хорошо, чтобы распознать разницу

Регулярное выражение для разрешения только китайского иероглифа с максимум 10 и минимум 2-мя иероглифами

 /^\p{Han}{2,10}+$/u 

Используйте это регулярное выражение, которое позволяет использовать только китайский символ.

  1. Это позволяет только китайскому персонажу &
  2. Это позволяет минимально 2 символа &
  3. Он допускает максимум 10 символов

Вы можете изменить минимальный и максимальный характер, изменив {2,10} в соответствии с вашими потребностями.

\ p & / u очень важны для добавления, пожалуйста, не избегайте добавлять его.