function mb_str_split( $string ) {
# Split at all position not after the start: ^
# and not before the end: $
return preg_split('/(?<!^)(?!$)/u', $string );
}
$string = '火车票';
$charlist = mb_str_split( $string );
print_r( $charlist );
?>
Array
(
[0] => 火
[1] => 车
[2] => 票
)
是PHP手册里面的一个例子,其实已经有注释了。 自己知道要区分多字节正则表达式需要加上 u 修饰符, 但是对里面的正则代表的含义不是太懂,(?<!^)(?!$) 正则具体匹配到的是那些字符?
是环视,匹配位置的用法~