Détecter le caractère chinois (multi-octets) dans la chaîne
Question
$str = "This is a string containing 中文 characters. Some more characters - 中华人民共和国 ";
Comment détecter les caractères chinois de cette chaîne et imprimer la partie qui commence par le premier caractère et se termine par « - »? (Il serait "caractères 中文 Certains caractères -.").
Merci!
La solution
Je l'ai résolu ce problème en utilisant des expressions régulières et preg_match:
$str = "This is a string containing 中文 characters. Some more characters - 中华人民共和国 ";
preg_match(/[\x{4e00}-\x{9fa5}]+.*\-/u, $str, $matches);
Autres conseils
PHP est-ce que stocke Unicode? Si oui, au pire, vous pouvez parcourir la chaîne, caractère par caractère, jusqu'à ce que vous frappez ceux dans la gamme chinoise.
Cochez cette trop PHP: Unicode - Manuel
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow