Как можно разбить строку заглавными буквами с помощью PHP? - PullRequest
4 голосов
/ 03 августа 2011

У меня есть строка: CamelCaseString

Я хочу разбить (), split () или какой-нибудь лучший метод на заглавные буквы, чтобы разбить эту строку на отдельные слова.

Какой самый простой способ сделать это?

--- ОБНОВЛЕНИЕ РЕШЕНИЯ ---

Эта ссылка на немного другой вопрос, но я думаю, что ответ, как правило, будет более полезным, чем ответы на текущий вопрос на этой странице: Как я могу добавить пробел в строку заглавными буквами, но сохранить непрерывные заглавные буквы вместе, используя PHP и регулярное выражение?

Ответы [ 3 ]

14 голосов
/ 03 августа 2011

Вы должны использовать регулярные выражения.Попробуйте это: preg_match_all('/[A-Z][^A-Z]*/', "CamelCaseString", $results);

Массив, содержащий все слова, будет сохранен в $ results [0].

7 голосов
/ 03 августа 2011

Кажется, что это тоже работает

$split = preg_split("/(?<=[a-z])(?![a-z])/", "CamelCaseString", -1, PREG_SPLIT_NO_EMPTY);

И это не будет разбивать длинные серии заглавных буквТ.е. «MySQL», станет «My» и «SQL»

0 голосов
/ 03 августа 2011

Функция split () устарела, поэтому я бы искал решение, которое использует другую функцию.

...