Мой вопрос прямо противоположный тому, который я добавил вчера вечером. Необходимо удалить последний тег br.
Входные данные :
Test1 is here<br><br>Now comes Test2<br><br>Then test 3<br><br><br>Thats it.
Вывод
Test1 is here<br>Now comes Test2<br>Then test 3<br><br>Thats it.
Моя попытка:
preg_replace("[((?:<br>)+)]","",$posttext)
Он удаляет все разрывы.
Вы можете заменить
<br><br>(?!<br)
к <br>
preg_replace('/<br><br>(?!<br)/', "<br>", $posttext);
Опережения помешает соответствовать больше <br>
Присмотритесь к этому хахахе
Если замена Preg не работает...
// cuts off one <br> as high as whatever $i is at
$string = "Test1 is here<br><br>Now comes Test2<br><br>Then test 3<br><br><br>Thats it.";
$i = 10;
while($i > 0)
{
$ii = 1;
$brake = "<br>";
$replace = "";
while($ii < $i)
{
$brake .= "<br>";
$replace .= "<br>";
$ii++;
}
$string = str_replace($brake,$replace,$string);
$i--;
}
echo $string; // Test1 is here<br>Now comes Test2<br>Then test 3<br><br>Thats it.
PS: Если для этой цели нет предварительной замены, ее можно использовать, хотя и очень неэффективно.