问题
$str = "This is a string containing 中文 characters. Some more characters - 中华人民共和国 ";
How do I detect chinese characters from this string and print the part which starts with the first character and ends with "-"? (it would be "中文 characters. Some more characters -").
Thank you!
回答1:
I've solved this problem using preg_match and regular expressions:
$str = "This is a string containing 中文 characters. Some more characters - 中华人民共和国 ";
preg_match(/[\x{4e00}-\x{9fa5}]+.*\-/u, $str, $matches);
回答2:
Is PHP storing this as Unicode? If so, at worst you could step through the string, character by character, until you hit those within the Chinese range.
Check this out too PHP: Unicode - Manual
来源:https://stackoverflow.com/questions/1550950/detect-chinese-multibyte-character-in-the-string