Мне нужно изменить фон всего текста, который имеет два пробела от начала строки.RegEx (php) - объединить строки в многострочной замене
text
shold быть преобразованы в "<div class='special'>text</div>
"
Это легко:
$text = preg_replace("|^ (.+)|um", "<div class='special'>$1</div>", $text);
Но
line1
line2
Преобразуется
<div class='special'>line1</div>
<div class='special'>line2</div>
Хотя
<div class='special'>line1
line2</div>
необходим.
Как это можно достичь?
Ваше регулярное выражение не во многих случаях. (. +) заставит его соответствовать чему-либо после двух пробелов, если заканчивается «новой линией, за которой следует что-то, кроме двух пробелов». – tiftik
Пока я стрелял из бедра, я думаю, это именно то, что просит Цяо. Как вы читаете это требование? – timdev
"изменить фон всего текста, который имеет два пробела от начала строки". Ну, ваше решение меняет строки, которые не начинаются с двух пробелов в этом случае: «asdf \ n1234 \ n5678». – tiftik