用大写字母拆分字

时间:2012-03-10 09:42:47

标签: php

我想用PHP中的大写字母分隔单词

例如:

$string = "facebookPageUrl";

我想这样:

$array = array("facebook", "Page", "Url");

我该怎么办?我想要最短,最有效的方式。

2 个答案:

答案 0 :(得分:17)

您可以将preg_splitlook-ahead assertion

一起使用
preg_split('/(?=\p{Lu})/u', $str)

此处\p{Lu}character class of all Unicode uppercase letters。如果您只使用US-ASCII个字符,则也可以使用[A-Z]

答案 1 :(得分:4)

$string = "facebookPageUrl";

preg_match_all('((?:^|[A-Z])[^A-Z]*)', $string, $matches);
var_dump($matches);

http://ideone.com/wL9jM