php - Как предотвратить разрывы слов в обобщенных сокращениях в строке

У меня есть слово вроде следующего:

$string1 = ucwords("bookingID");
substr(preg_replace("/([A-Z])/", ',\\1', $string1), 1))

output is coming like : Booking I D

но я хочу избежать вставки пространства, если есть две последовательные столицы.

Expected output: booking ID

If I enter word like bookingAmountReceived then expected output is: Booking Amount Received

0
nl ja de

3 ответы

Использовать квантификатор:

preg_replace("/[A-Z]+/", ",$0", $string1);
2
добавлено
$String = 'bookingAmountReceived';
$Words = preg_replace('/[A-Z][a-z]+/', ' $0 ', ucfirst($String));
echo $Words;
1
добавлено
@Aarti Borole, я редактировал свой код и делаю некоторые изменения, надеюсь, он сработает для вас.
добавлено автор Devang Rathod, источник
@Sujit Singh благодарит брата.
добавлено автор Devang Rathod, источник
@Aarti Borole, всегда приветствую. Я рад помочь кому-то, если смогу.
добавлено автор Devang Rathod, источник
@Sujit Singh, хорошо, я изменюсь.
добавлено автор Devang Rathod, источник
@Sujit Singh, теперь проверьте мой отредактированный код, это будет в соответствии с вашим сценарием.
добавлено автор Devang Rathod, источник
@Sujit Singh, я не удивительный, я просто нормальные мужчины, как вы ..
добавлено автор Devang Rathod, источник
+1. хм, это тоже работает для movieID.
добавлено автор Sujit Singh, источник
@devang: - но если строка похожа на bookingIDDate, тогда эта логика создает бронирование IDDate, тогда как требуется идентификатор даты бронирования. Можете ли вы изменить код для обработки этого сценария?
добавлено автор Sujit Singh, источник
@devang: это работает !! я должен сказать, что это просто потрясающе !! замечательная работа .. спасибо.
добавлено автор Sujit Singh, источник
На самом деле проблема отличается. Если я дам, как bookingID, то я хочу, чтобы номер бронирования. Я не хочу пространства между двумя последовательными столицами
добавлено автор Aarti Borole, источник
Спасибо всем..
добавлено автор Aarti Borole, источник
preg_replace("/[A-Z]+/", " $0", $string1);
0
добавлено
phpGeeks
phpGeeks
3 620 участник(ов)

Best PHP chat Еще: @dbGeeks - базы данных @phpGeeksJunior - новичкам @moscowProgers - IT Москва @ebanoePhp - весёлый канал о PHP @laravel_pro - Laravel @jobGeeks - вакансии @jsChat - JS Правила: https://t.me/phpGeeks/764859 ДР - 28.03.2016

PHP
PHP
1 309 участник(ов)

Группа про современный PHP. Обсуждаем ООП, TDD, BDD, DDD, SOLID, GRASP и прочие крутые базворды Для ознакомления: https://gist.github.com/mkusher/711bd46f0b62fbae851182e6fb3b1839 Группа PHP для новичков @phpGeeksJunior Вакансии: https://t.me/fordev

PHP — вакансии, поиск работы и аналитика
PHP — вакансии, поиск работы и аналитика
1 251 участник(ов)

Публикуем вакансии и запросы на поиск работы по направлению PHP, Laravel, Symfony, Yii и т.д. Здесь всё: full-time, part-time, remote и разовые подработки. См. также: @qa_jobs, @devops_jobs, @javascript_jobs, @nodejs_jobs, @uiux_jobs, @products_jobs

phpGeeksJunior
phpGeeksJunior
980 участник(ов)

Группа для новичков. Не стесняйтесь задавать вопросы по php. Не флудить!!!! Правила и полезные ссылки https://gist.github.com/exileed/a53dd0617b35a705ff44b38c8028e6a5 Бест от пхпгикс https://t.me/best_of_phpgeeks

phpclub.ru
phpclub.ru
872 участник(ов)

Официальный чат phpclub.ru - остерегайтесь подделок #rules Правила группы - уважайте друг друга. Скриншоты -> ссылками. Код -> pastebin.com. Вакансии строго -> https://goo.gl/4bNxym, в чат ссылку. За рекламу и мат - БАН!

Devall | PHP
Devall | PHP
272 участник(ов)

Пристанище для восходящих звёзд разработки, которые перейдут на более адекватные языки. http://combot.org/chat/-1001014863761 Инвайт: j.mp/devallphp