1

我正在尝试将字符串拆分为数组。我试过 str_split() 但问题是像“äüöÄÜÖß”这样的字符不起作用(它们变成了问号)

所以我试图对 mb_split() 做同样的事情,但我不知道如何获得正确的正则表达式。

你能帮我么?

这是代码:

$arr = mb_split("\.", $str);
4

2 回答 2

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 4.1.0 或更高版本以及 win32 上的 PHP 4.2.3。自 PHP 4.3.5 起检查模式的 UTF-8 有效性。”

于 2012-08-26T16:32:10.257 回答
3

行。就是这样:

$arr = preg_split('//u', $str, -1, PREG_SPLIT_NO_EMPTY);
于 2012-08-26T16:47:39.717 回答