我有一个字符串:CamelCaseString
我想对大写字母进行explode()、split() 或一些更好的方法来将此字符串分解为单个单词。
最简单的方法是什么?
--- 解决方案更新 ---
此链接指向一个略有不同的问题,但我认为答案通常比此页面上当前问题的答案更有用: 如何在大写字母的字符串中添加空格,但使用 PHP 和正则表达式?
我有一个字符串:CamelCaseString
我想对大写字母进行explode()、split() 或一些更好的方法来将此字符串分解为单个单词。
最简单的方法是什么?
--- 解决方案更新 ---
此链接指向一个略有不同的问题,但我认为答案通常比此页面上当前问题的答案更有用: 如何在大写字母的字符串中添加空格,但使用 PHP 和正则表达式?
您应该使用正则表达式。尝试这个:preg_match_all('/[A-Z][^A-Z]*/', "CamelCaseString", $results);
包含所有单词的数组将保存在 $results[0] 中。
这似乎也有效
$split = preg_split("/(?<=[a-z])(?![a-z])/", "CamelCaseString", -1, PREG_SPLIT_NO_EMPTY);
而且它不会分解更长的大写字母。即“MySQL”,将变为“My”和“SQL”
split() 函数已被弃用,因此我会寻找使用其他函数的解决方案。