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

Форум Регулярные Выражения

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

 

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

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

тема: замена слова без разрыва
 
 автор: vorobey   (12.05.2009 в 21:42)   письмо автору
 
 

Привет всем.
есть текстовый файл вида:
гадюка змея
гад уж
.... ....
.... ....
читаю его:
 while (!feof ($file))

    $str = fgets($file, 4096);  // строка что    чем    
    $ex = explode("\t",$str);
    $pattern=$ex[0]; // что
    $replase=$ex[1]; // чем
$result=mysql_query("SELECT.......
while ($row=mysql_fetch_array ($result))    
   {
    $text=preg_replace("/" .preg_quote($pattern). "/" ,$replase ,$row[story] );
    mysql_query("UPDATE.........
   }}fclose ($file);

и заменяю в тексте эти слова. Но если первым идет
"гад" , то получается в замене "уж юка" решаю эту проблему
ручным написанием в текстовый файл после "гадюка\h" и тогда слово не коверкается , но и исключается из замены
не пойму в чем ошибка.
А смысл всего - заменить нежелательные слова без единого разрыва).

  Ответить  
 
 автор: ывфыв   (12.05.2009 в 22:15)
 
   для: vorobey   (12.05.2009 в 21:42)
 

разрывы!!!!

  Ответить  
 
 автор: vorobey   (12.05.2009 в 23:52)   письмо автору
 
   для: ывфыв   (12.05.2009 в 22:15)
 

что? ну если хотите , то как сделать чтоб выражение понимало где целое слова , а где нет!

  Ответить  
 
 автор: 231   (13.05.2009 в 00:50)
 
   для: vorobey   (12.05.2009 в 23:52)
 

попробуй это
$text=preg_replace("/\b" .preg_quote($pattern). "\b/" ,$replase ,$row[story] );

  Ответить  
 
 автор: vorobey   (13.05.2009 в 22:41)   письмо автору
 
   для: 231   (13.05.2009 в 00:50)
 

спасибо и этот вариант тоже подходит

  Ответить  
 
 автор: vorobey   (13.05.2009 в 00:48)   письмо автору
 
   для: vorobey   (12.05.2009 в 21:42)
 

решил
$pattern1="/".$pattern."\h/";

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

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