Делаю так
$description= ereg_replace ( '((<br />)+\s*}){2,}' , '<br />' , $description );
Но хоть убейте... Из строки "<br /><br /> <br /><br /> <br /><br />" получается "<br /> <br /> <br />"
Что тут не так?
Спустя 16 минут, 16 секунд (14.05.2012 - 00:05) Игорь_Vasinsky написал(а):
$description= preg_replace ( '#<br />\s*</br>#s' , '<br />' , $description );
так не?
Спустя 8 минут, 30 секунд (14.05.2012 - 00:13) mishgan написал(а):
чет не работает
Спустя 1 минута, 6 секунд (14.05.2012 - 00:15) Игорь_Vasinsky написал(а):
дай кусок исходного текста
Спустя 11 минут, 36 секунд (14.05.2012 - 00:26) mishgan написал(а):
$description="1 <br /> <br /> <br /><br /><br /><br /> <br /> <br /><br /><br /> 1";
$description= preg_replace ( '#<br />\s*<br />#s' , '<br />' , $description );
echo $description;
выдает "1 <br /> <br /><br /> <br /><br /> 1"
Спустя 25 минут, 9 секунд (14.05.2012 - 00:51) inpost написал(а):
mishgan
У тебя регулярка правильная, но не ereg, а переделай в preg(!).
У тебя регулярка правильная, но не ereg, а переделай в preg(!).
Спустя 5 минут, 44 секунды (14.05.2012 - 00:57) Игорь_Vasinsky написал(а):
неа. я на preg уже мин 10 маюсь, аот если её 4 раза подряд повторить - заменяет, а так частично тока... хз..аномалия
Спустя 51 минута, 6 секунд (14.05.2012 - 01:48) FatCat написал(а):
Регулярка конечно красиво. Но не читабельно. Я бы вот так сделал:
<?php
$description = "1 <br /> <br> <br> <br /> <br /> <br><br /><br />
<br /><br /> <br> <br /> <br /><br /> <br />2";
$description = preg_split("#<br.+?>#",$description);
foreach($description as $k=>$v)if(!trim($v))unset($description[$k]);
$description = implode("<br />",$description);
print $description;
?>
Спустя 8 часов, 19 минут, 7 секунд (14.05.2012 - 10:07) mishgan написал(а):
Цитата (Игорь_Vasinsky @ 13.05.2012 - 20:57) |
неа. я на preg уже мин 10 маюсь, аот если её 4 раза подряд повторить - заменяет, а так частично тока... хз..аномалия |
Вот и я говорю аномалия..... и с ereg_replace и preg_replace пробовал и разные варианты регулярок..... ничего не помогает
$description = "1 <br /> <br> <br> <br /> <br /> <br><br /><br />
<br /><br /> <br> <br /> <br /><br /> <br />2";
$description = preg_split("#<br.+?>#",$description);
foreach($description as $k=>$v)if(!trim($v))unset($description[$k]);
$description = implode("<br />",$description);
print $description;
Над таким вариантом тоже подумывал..... но грамоздко
Спустя 6 часов, 21 минута, 32 секунды (14.05.2012 - 16:29) inpost написал(а):
mishgan
Ты свой патерн пробовал, который у тебя был изначально, но с preg_replace? Он должен работать.
Ты свой патерн пробовал, который у тебя был изначально, но с preg_replace? Он должен работать.
Спустя 1 минута, 7 секунд (14.05.2012 - 16:30) Игорь_Vasinsky написал(а):
я ж пробывал, неа
Спустя 31 минута, 6 секунд (14.05.2012 - 17:01) inpost написал(а):
Игорь_Vasinsky
А я вот запустил - работает всё. Единственное пришлось убрать лишнюю фигурную скобку, которая ни к селу ни к городу стоит в середине патерна. Это была опечатка автора.
А я вот запустил - работает всё. Единственное пришлось убрать лишнюю фигурную скобку, которая ни к селу ни к городу стоит в середине патерна. Это была опечатка автора.