Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Замена участка текста на заданный шаблон.
 
 автор: KRAKLU   (15.02.2009 в 13:52)   письмо автору
 
 

Я новичок в php возможно вопрос очень простой, но сам задачу решить не могу, помогите, пожалуйста.

Задача заменить одно предложение в тексте на другое.
В php есть метод
str_replace(); 
но он производит замену только отдельного слова.
Нужно что-то подобное только заменить предложение.

  Ответить  
 
 автор: Trianon   (15.02.2009 в 14:10)   письмо автору
 
   для: KRAKLU   (15.02.2009 в 13:52)
 

он выполняет замену последовательности символов любой длины.

  Ответить  
 
 автор: KRAKLU   (15.02.2009 в 14:13)   письмо автору
 
   для: Trianon   (15.02.2009 в 14:10)
 

пробельные символы не учитывваються, этот метод не подходит.

  Ответить  
 
 автор: Trianon   (15.02.2009 в 14:21)   письмо автору
 
   для: KRAKLU   (15.02.2009 в 14:13)
 

str_replace меняет любую цепочку символов. Даже если это бинарный поток.
Если Вам требуется не менять, а что-то другое - нужно более четко формулировать задачу.

[поправлено модератором]

  Ответить  
 
 автор: KRAKLU   (15.02.2009 в 14:52)   письмо автору
 
   для: Trianon   (15.02.2009 в 14:21)
 

Задача найти в произвольном тексте предложение и заменить его другим. str_replace НЕ учитывает пробельные символы.

  Ответить  
 
 автор: cheops   (15.02.2009 в 15:26)   письмо автору
 
   для: KRAKLU   (15.02.2009 в 14:52)
 

Нет, на самом деле пробелы учитываются, возможно вы копируете предложение из браузера, который несколько подряд идущих пробелов заменяет одним пробелом. Откуда поступает текст, который следует подвергнуть замене? Доступна ли страница для просмотра (чтобы можно было воспроизвести ситуацию)?

  Ответить  
 
 автор: KRAKLU   (15.02.2009 в 15:29)   письмо автору
 
   для: cheops   (15.02.2009 в 15:26)
 

$text=”Клара у Карла украла кораллы”;
$zamen1=”Клара у Карла ”; // заменяем строку
$zamen2=”Воровка Клара у лоха Карла ”; 
$text =str_replace($zamen1,$zamen2,$text);


НЕ РАБОТАЕТ!!!

  Ответить  
 
 автор: cheops   (15.02.2009 в 15:32)   письмо автору
 
   для: KRAKLU   (15.02.2009 в 15:29)
 

У вас в оригинальном скрипте такие же кавычки? Попробуйте их заменить на обычные - у меня ваш скрипт отрабатывает на ура.
<?php
$text
="Клара у Карла украла кораллы"
$zamen1="Клара у Карла "// заменяем строку 
$zamen2="Воровка Клара у лоха Карла ";  
$text =str_replace($zamen1,$zamen2,$text);
echo 
$text// Воровка Клара у лоха Карла украла кораллы
?>

  Ответить  
 
 автор: KRAKLU   (15.02.2009 в 15:39)   письмо автору
 
   для: cheops   (15.02.2009 в 15:32)
 

ГГ тема закрыта
Проблема была с пробелами как писал Автор: cheops

Прошу пощения за бестолковый напряг

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования