Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   подскажите RegExp для замены пустых строк в тексте. (https://javascript.ru/forum/misc/30433-podskazhite-regexp-dlya-zameny-pustykh-strok-v-tekste.html)

mitiya 03.08.2012 23:46

подскажите RegExp для замены пустых строк в тексте.
 
РегЕкспы вызывают у меня взрыв мозга ((

мне нужно заменить в тексте пустые строки которые созданы с помощью
'\n' строки созданные пробелами.
хотел сделать так text.replace(/\n\n/g,'\n \n')
но понял, что во первых это не правильно отработает \n\n\n
а также к примеру "\n " и тому подобные вещи тоже нормально не отработаются.

был бы признателен за регЕксп и по возможности за разжевывание его.

Deff 04.08.2012 00:01

mitiya,
Приведите пару подобных текстов, каждый обрамите в цитату

Dim@ 04.08.2012 00:17

mitiya,
не очень хорошо объяснили ;)
var txt = "\n\n";
var reg = new RegExp("\n","g");
alert(txt.replace(reg, "LOL"));

вот это наверно вам нужно?

mitiya 04.08.2012 00:38

text = '1234\n \n567\n\n89';
alert( text.replace(/\n\n/g,'\n|      |\n'));


первую пустую строку он не заменит, а надо

как сюда вставлять скрипты с кнопкой запустить ?

Dim@ 04.08.2012 00:40

mitiya,
вы хотите снести переводы строк?

mitiya 04.08.2012 00:49

Цитата:

Сообщение от Dim@ (Сообщение 194467)
mitiya,
вы хотите снести переводы строк?

нет. просто я делаю постраничный вывод текста, но я не могу рассчитать
количество символов которое влезет на экран.
Хоть шрифт и моноширинный, но перевод строки вносит путаницу.
Хочу заменить эти пустые строки соответствующим ширине строки (при данном разрешении) количеством пробелов.

но при все этом не не могу быть уверенным в том что эти пустые строки состоят только из '\n\n'. Они так же могут содержать неопределенное количество пробелов или других \n.

Dim@ 04.08.2012 01:00

mitiya,
:blink:
во первых, придеться делать &nbsp - No-Break-Space непереносимый пробел (вроде так называеться - я долго не пользовался) что хреново
во вторых, сайты на разных системах и компах с разным разрешением по разному отображаются что приведет к съезду верстки сайта

Deff 04.08.2012 01:07

mitiya,
Вам наверно нун выводить текст в скрытый postion:fixed;z-index:-1000;overflow-y:auto; div c шириной экрана и нужной высоты
По событию scroll - считать символы уместившиеся в данный рамер блока

mitiya 04.08.2012 01:18

Цитата:

Сообщение от Deff (Сообщение 194472)
mitiya,
Вам наверно нун выводить текст в скрытый postion:fixed;z-index:-1000;overflow-y:auto; div c шириной экрана и нужной высоты
По событию scroll - считать символы уместившиеся в данный рамер блока

я сейчас примерно так и делаю. только скрол не вариант ибо расчет на мобильные браузеры. Я я наполняю див кусочка текста до тех пор пока его высота не будет больше определенного значения. Но это все как-то не элегантно что ли (

Deff 04.08.2012 19:34

Цитата:

Сообщение от mitiya
я сейчас примерно так и делаю. только скрол не вариант ибо расчет на мобильные браузеры. Я я наполняю див кусочка текста до тех пор пока его высота не будет больше определенного значения. Но это все как-то не элегантно что ли (

:) По-моему событие скролл, скроллируемого блока с заранее выставленной высотой - интересней, нежели постоянная проверка при заполнении?
Просто встаавляете строками по триста символов - по событию скролл - отнимаете последнее и вставляете половину 150 - ежели скролла нет - так и оставляем - есть - отнимаем половину добавленного - 75


Часовой пояс GMT +3, время: 10:59.