我正在尝试将字符串拆分为数组。 我试过str_split(),但问题是像“äüöÄÜÖß”这样的字符不起作用(它们成了问号)
所以我试图用mb_split()做同样的事情,但我不知道如何为它获得正确的正则表达式。
你能帮帮我吗?
以下是代码:
$arr = mb_split("\.", $str);
答案 0 :(得分:4)
您可以尝试:
$arr = preg_split('//u', $str, -1, PREG_SPLIT_NO_EMPTY);
对于/u
修饰符,请参阅http://php.net/manual/en/reference.pcre.pattern.modifiers.php:
“u(PCRE8)此修饰符打开与Perl不兼容的PCRE的其他功能。模式字符串被视为UTF-8。此修饰符可在Unix和PHP上从PHP 4.1.0或更高版本获得4.2.3在win32上。从PHP 4.3.5开始检查模式的UTF-8有效性。“
答案 1 :(得分:3)
确定。就是这样:
$arr = preg_split('//u', $str, -1, PREG_SPLIT_NO_EMPTY);