$str = "I want to eat我要吃飯 , you?你呢?";
出力が欲しい:
array(
0 => I,
1 => want,
2 => to,
3 => eat,
4 => 我,
5 => 要,
6 => 吃,
... ...
);
私は試した :
1
function mb_str_split($str, $length = 1) {
if ($length < 1) return FALSE;
$result = array();
for ($i = 0; $i < mb_strlen($str); $i += $length) {
$result[] = mb_substr($str, $i, $length);
}
return $result;
}
var_dump(mb_str_split($str, 3));
上記の方法は、すべての文字列が繁体字中国語の場合にのみ機能します。
2
preg_match("/\p{Han}+/u", $str, $matches);
上記のメソッドは、中国語の最初の文字列である我要吃飯のみを返します。すべての (我要吃飯, 你呢) を取得するには?
すべてUTF8を使用しています。
目的の出力を達成するにはどうすればよいですか?