I have a string: CamelCaseString
I want to explode(), split(), or some better method on capital letters to break this开发者_StackOverflow string down into the individual words.
What's the simplest way to do this?
--- SOLUTION UPDATE ---
This link is to a slightly different question, but I think the answer will generally be more useful than the answers to the current question on this page: How can I add a space in string at capital letters, but keep continuous capitals together using PHP and a Regex?
You should use regular expressions.
Try this: preg_match_all('/[A-Z][^A-Z]*/', "CamelCaseString", $results);
The array containing all the words will be saved in $results[0].
This seems to work too
$split = preg_split("/(?<=[a-z])(?![a-z])/", "CamelCaseString", -1, PREG_SPLIT_NO_EMPTY);
And it won't break up longer runs of uppercase letters. I.e. "MySQL", will become "My" and "SQL"
The split() function has been deprecated so I would look for a solution that uses some other function.
精彩评论