una ultimos str_replace parte extraer eliminar caracteres caracter cadena buscar php string cjk

ultimos - Php comprueba si la cadena tiene caracteres chinos



substring php (4)

Tengo la cadena $str y quiero comprobar si el contenido tiene caracteres chinos o no (verdadero / falso)

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

¿Podrías ayudarme?

¡Gracias! Adrián


Este link a una pregunta anterior sobre la identificación de chino simplificado o tradicional podría darle algunas ideas ... usted no especifica realmente a qué se refiere, y no conozco a los chinos lo suficiente como para reconocer la diferencia


Podría usar una clase de caracteres Unicode http://www.regular-expressions.info/unicode.html

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

Esto solo comprueba la presencia de al menos un carácter chino. Es posible que desee ampliar esto si desea que coincida con la cadena completa.


Regex para permitir solo caracteres chinos con un máximo de 10 y un mínimo de 2 caracteres chinos

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

Utilice esta expresión regular que solo permite caracteres chinos.

  1. Permite solo caracteres chinos y
  2. Permite mínimo 2 caracteres y
  3. Permite máximo 10 caracteres.

Puede cambiar el carácter mínimo y máximo cambiando {2,10} según su necesidad.

/ p & / u son muy importantes para agregar, por favor no evite agregarlo.


@mario respuesta de @mario es correcta!

Para caracteres chinos use esta expresión regular: /[/x{4e00}-/x{9fa5}]+/u

Y no olvides el modificador u !

Acerca de la reference modificador u

TKS a Mario