Я хочу изменить Text1 на Text2.
Текст1
Test1 is here<br>Now comes Test2<br>Then test 3<br><br>Thats it.
Text2
Test1 is here<br><br>Now comes Test2<br><br>Then test 3<br><br><br>Thats it.
то есть; добавьте дополнительный тег «breakline» в существующий в строке.
Я попробовал это с preg_replace, но не могу понять, как я хотел.
Моя попытка –
preg_replace('/(?:(?:<br>)\s*)/s', "<br><br>", $posttext)
Это должно сделать это:
$text = preg_replace('/((<br>(\s+)?)+)/', '$1<br>', $text);
Если вы не хотите разрешать новые строки и пробелы, попробуйте: /((<br>)+)/
Попробуй это:
preg_replace('/((?:<br>)+)\s*/s', "$1<br>", $posttext);
Это фиксирует последовательность тэгов, необязательно сопровождаемых пробелами, а затем добавляет еще одну после них.
DEMO
попробуй это.
$text1 = "Test1 is here<br>Now comes Test2<br>Then test 3<br><br>Thats it."; $text2 = substr($text1,0,strripos($text1,"<br>")) ."<br>" . substr($text1,strripos($text1,"<br>"));