Замена символа перевода строки

12
D
На сайте с 20.09.2010
Offline
175
2862

Как в тексте заменить 2 и более символа перевода строки на один символ перевода строки.

Z2
На сайте с 15.11.2009
Offline
84
#1

если в ворде, то заменяем два символа перевода на один, и клацаем на замену до опупения (где тег для перечеркнутой линии?!?!) достижения нужного результата

DV
На сайте с 01.05.2010
Offline
644
#2

$ sed '/^$/d' input.txt > output.txt

Cygwin, *nix.

VDS хостинг ( http://clck.ru/0u97l ) Нет нерешаемых задач ( https://searchengines.guru/ru/forum/806725 ) | Перенос сайтов на Drupal 7 с любых CMS. ( https://searchengines.guru/ru/forum/531842/page6#comment_10504844 )
D
На сайте с 20.09.2010
Offline
175
#3

Да не в ворде. В php

Вот пробую так:

preg_replace('/[\s]{2,}$/m', '\r\n', $text);

что-то не получается..

Тоесть я хочу чтобы текст:

111

222

333

4444

заменился на:

111

222

333

4444

DV
На сайте с 01.05.2010
Offline
644
#4

$text = preg_replace('/((\r\n*?)(\s*))/', '\r\n', $text);

siv1987
На сайте с 02.04.2009
Offline
427
#5

preg_replace('/[\n\r]{2,}/', '\r\n', $text);

D
На сайте с 20.09.2010
Offline
175
#6

Использую патерн:

preg_replace('/[\r\n]{3,}/', '\r\n\r\n', $text);

Почему-то такой текст:

111111111111\r\n222222222222\r\n\r\n\r\n333333333333\r\n\r\n\r\n\r\n\r\n\r\n4444444444444

меняет на:

111111111111

222222222222\r\n\r\n333333333333\r\n\r\n4444444444444

И \r\n - отображается не как перевод строки, а как текст (((

siv1987
На сайте с 02.04.2009
Offline
427
#7

"\r\n\r\n", $text);

D
На сайте с 20.09.2010
Offline
175
#8

Хочу еще менять таким образом символы <br /> в тексте. Написал такую функцию:

function replace_probel($text)

{
$text=preg_replace('| +|', ' ', $text);
$text=preg_replace('/[\r\n]{3,}/', "\r\n\r\n", $text);
$text=preg_replace('/[<br \/\>]{3,}/', "<br \/\><br \/\>", $text);
return trim(addslashes($text));
}

Текст:

111111111111111\r\n22222222222222222222

Меняет на:

11111111111111<br \="" /><br \="" />222222222222<br \="" /><br \="" />

Почему?

DV
На сайте с 01.05.2010
Offline
644
#9

давайте застрелимся

LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#10

Вариант №1:

$text=str_replace("\r\n\r\n\r\n","\r\n",$text);

$text=str_replace("\r\n\r\n","\r\n",$text);

$text=str_replace("\r\n\r\n","\r\n",$text);

При любом раскладе будет 1 перевод строки на выходе.

Вариант №2:

$text=implode("\r\n",file('textfile.txt',FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES));

И не надо мучить ругулярки, где они вообще не нужны :)

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий