Взять слово из предложения и переместить эту часть

Тема в разделе "PHP", создана пользователем UDAV, 26 фев 2010.

Статус темы:
Закрыта.
Модераторы: latteo
  1. UDAV

    UDAV

    Регистр.:
    22 июн 2007
    Сообщения:
    781
    Симпатии:
    153
    Допустим, есть названия фильмов, которые начинаются на The, например, The Transporter.
    Нужно переместить The, чтоб получилось вот так "Transporter, (The)"

    ---------- Сообщение добавлено в 02:37 ---------- Предыдущее сообщение опубликованн в 00:57 ----------

    Чет я ступил) Вообщем вот, может кому пригодится.
    PHP:
    $name 'The Transporter';
    if (
    substr($name,0,4) == 'The ') {  // проверяем слово, чтоб начиналось на "The " (с пробелом)
    $a substr($name,0,3); // отрезаем первые 3 символа
    $b substr($name,3);   // отрезаем все после 4 символа
         
    echo $b.', ('.$a.')';  // тут склеиваем как надо
    } else {
         echo 
    $name// Если слово начинается не на "The ", то выводим ничего не перемещая
    }  
     
  2. SeoProger

    SeoProger Писатель

    Регистр.:
    29 ноя 2008
    Сообщения:
    9
    Симпатии:
    3
    Еще можно использовать регулярные выражения:
    PHP:
    $name 'The Transporter'
    echo 
    preg_replace('/^(The)\s+(.+)/''\\2 (\\1)'$name);
     
    UDAV нравится это.
  3. UDAV

    UDAV

    Регистр.:
    22 июн 2007
    Сообщения:
    781
    Симпатии:
    153
    Спасибо, только так нагрузка на сервер будет выше)
     
  4. venetu

    venetu

    Регистр.:
    28 мар 2007
    Сообщения:
    735
    Симпатии:
    261
    Ты когда-то где-то вычитал, что регекспы работают медленнее чем строковые функции - и так видимо и запомнил :)

    На самом деле можешь сравнить, запустив 10000 циклов твоего "if(substr($name" и этого регекспа. И увидишь, что один регексп, да еще и так мудро написаный (SeoProger, снимаю шляпу) работает быстрее, чем три сабстра и два конката.
     
  5. stasdre

    stasdre Постоялец

    Регистр.:
    15 янв 2010
    Сообщения:
    125
    Симпатии:
    18
    Это вообще к чему было, если скрипт рабочий?:nezn:
     
  6. n1ce

    n1ce Писатель

    Заблокирован
    Регистр.:
    19 дек 2009
    Сообщения:
    7
    Симпатии:
    0
    Бывает когда нужен вывод некоторых имен и т.п , вот этот скриптик и служит его выводом.
     
Статус темы:
Закрыта.