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

Статус
В этой теме нельзя размещать новые ответы.

UDAV

Постоялец
Регистрация
22 Июн 2007
Сообщения
775
Реакции
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 ", то выводим ничего не перемещая
}
 
Еще можно использовать регулярные выражения:
PHP:
$name = 'The Transporter'; 
echo preg_replace('/^(The)\s+(.+)/', '\\2 (\\1)', $name);
 
  • Нравится
Реакции: UDAV
Спасибо, только так нагрузка на сервер будет выше)

Ты когда-то где-то вычитал, что регекспы работают медленнее чем строковые функции - и так видимо и запомнил :)

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