Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > PHP: Тексты > Замена выражения |
Автор: semnt 21.4.2006, 01:24 |
Вот такая трабла... Собираю чат... нужно осуществить замену выражения "/я" на Логин юзера... Ну предположим? что этот логин: semnt Нужно заменить: "Привет! /я" на "Привет! semnt" Но выражение: "При/явет" должно остаться без изменений. То есть замену нужно делать только если перед выражением "/я" стоит пробел, либо это начало строки и после выражения "/я" должен стоять пробел, либо это конец строки. Всё вроде просто, но не работает( <? $str="/я /я /я"; echo $str; echo "<br>"; $str=eregi_replace("(^| )(/я)($| )","\\1semnt\\3",$str); echo $str; echo "<br>"; ?> Выводит: "semnt /я semnt"; Первое и третье вхождение заменяет... а вот второе - ни в какую...( Видимо в ядре при замене происходит смещение указателя в строке и второе вхождение он почему-то уже не видит... Как быть? Пасиба) |
Автор: Ciber SLasH 21.4.2006, 01:59 | ||
|
Автор: semnt 21.4.2006, 03:03 |
на локальном нормально... на сервере (PHP Version 4.3.11) не работает...( |
Автор: Ciber SLasH 21.4.2006, 03:30 | ||
А если так:
|