Форум программистов, компьютерный форум, киберфорум
Наши страницы

PHP для начинающих

Войти
Регистрация
Восстановить пароль
 
EVOSandru6
3 / 3 / 0
Регистрация: 23.05.2012
Сообщений: 445
#1

Как разбить Горбатое слово в php? - PHP

23.07.2015, 11:25. Просмотров 299. Ответов 2
Метки нет (Все метки)

Добрый день,

Нужно, чтобы из CategoryCars получилось category-cars или хотя бы ['сategory','сars']
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.07.2015, 11:25
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как разбить Горбатое слово в php? (PHP):

Как разбить слово на отдельные буквы? - PHP
Подскажите, пожалуйста, какая есть функция, чтобы разбить слово на отдельные буквы для дальнейшего добавления отдельных букв в массив? ...

Как разбить строку на слова по некоторому символу, php? - PHP
Есть строка "город (Субъект)". Например, "Чита (Забайкальский край)" как мне разделить эту строку так, что бы в одной переменной был город,...

Разбить слово - PHP
Здравствуйте. Не могу понять как, например, из этого слова "testing@mail.ru" получить такое "t*@*l.ru" Начало только такое получилось: ...

Слово php как так wtf? - PHP
Привет пацаны, в примере который ниже, немогу понять вот это значение "php" && $_POST Откуда взялось слово php Непонимаю? ...

Организовать поиск по сайту PHP&MySQL. Как просклонять слово? - PHP
Пример: При запросе "медведь", пользователю надо выдать "медведи", "медведя"..."медвежонок"..."медвеженку". Ещё один "сумка" ->...

Как называется выражение <<<слово . слово; - PHP
Как эту запись правильно назвать? Оператором, конструкцией языка или ещё как? &lt;?php $a = &lt;&lt;&lt;qwertyuiop content... ...

2
Para bellum
Эксперт PHP
3027 / 2788 / 598
Регистрация: 06.01.2011
Сообщений: 8,125
23.07.2015, 12:57 #2
Можно так:
PHP
1
2
3
4
5
6
7
8
9
<?php 
    # Исходная строка
    $string = 'CategoryCars';
    
    # Разбиваем по заглавной букве и заменяем
    $result = strtolower( preg_replace('~(?!\b)([A-Z])~', '-\\1', $string) );
    
    # Выводим
    echo $result;
1
Jewbacabra
Эксперт PHP
2652 / 2239 / 842
Регистрация: 24.04.2014
Сообщений: 6,728
23.07.2015, 13:15 #3
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
PHP
1
2
3
4
5
6
function splitWords($str) {
    $arr = [];
    preg_match_all('/([A-Z][^A-Z]*)/', $str, $arr);
    return strtolower(implode('-', $arr[0]));
}
echo splitWords('CategoryCars');
Добавлено через 16 минут
без регулярок:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function getForReplace() {
    $res = [];
    for ($i='A', $j='a'; $i <= 'Z' && !isset($i[1]); ++$i, ++$j) {
        $res[0][] = $i;
        $res[1][] = "-$j";
    }
    return $res;
}
 
function splitWords($str) {
    $first = strtolower($str[0]);
    $str = substr($str, 1);
    $forReplace = getForReplace();
    return $first . str_replace($forReplace[0], $forReplace[1], $str);
}
echo splitWords('CategoryCars');
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.07.2015, 13:15
Привет! Вот еще темы с ответами:

Как заменить PHP 7 на PHP 5.6 в Ubuntu 16.04? Установлена как модуль Apache 2.4 - PHP
Переехал на новый VPS а на нем по умолчанию стоит 7 PHP. Я хочу поставить 5.6 чтобы не морочить голову с совместимостью скриптов....

Как разбить массив? - PHP
Есть массив: Array( =&gt; один =&gt; два|три|четыре ) Array ( =&gt; один =&gt; два =&gt; три) Как его разбить на разные значения? Я, допустим,...

Как разбить строку? - PHP
Добрый день Подскажите плиз. Необходимо разбить строку состоящую из чисел и операторов (+-/*). В результате должен быть создан массив...

Как разбить на страницы - PHP
&lt;? $dir = &quot;/img/&quot;; $path = $_SERVER.$dir; $images = scandir($path); if (false !== $images) { $images =...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru