Есть текст в текстовом редакторе на сайте, я хочу по клику на кнопку средствами JS "на лету" отформатировать текст под свои нужды и заменить в редакторе на уже отформатированный.
Вот пример работающего кода, как я это делаю:
var text = document.getElementById(defaultid).value;
var pattern = new RegExp("","gi");
var findCount = (text.match(pattern) || []).length;
document.getElementById(defaultid).value= text.replace(pattern, "");
Тут я по сути удаляю в тексте встречающиеся "".
А теперь - что мне НУЖНО доделать, с чем я не могу самостоятельно справиться :)
1) В тексте может встретиться такой кусок, к примеру, когда после какого-нибудь заголовка следующей строчкой идет сразу сам текст. Например:
заголовок
тут текст
Мне нужно вставить дополнительную пустую строку между ними, чтобы стало так:
заголовок
тут текст
Ориентируемся на и после него уже проверяем - идет ли следующая УЖЕ пустая строка. Если да, то ничего делать не надо. Если после с новой строки идет какой-то символ - тогда, соответственно, делаем перенос, т.е. добавляем разделяющую их пустую строку.
2) В тексте могут встречаться двойные или тройные переносы строк, между ними еще может быть какой-то пробел, т.е. выглядеть это может вот так:
идет какой-то текст.
вот еще текст
Видите - тут между строчками текста вообще три строки и в них ещё и какой-то символ (пробел в данном случае, по идее). Мне нужно это убрать и привести к нормальному виду, к такому:
идет какой-то текст.
вот еще текст
Т.е. чтобы между ними была просто одна пустая строка.
Прикреляю к заданию проверочный текстовый файл, где это встречается и который можно брать для работы в качестве примера.
От исполнителя ожидаю доработанный кусок приведенного мной кода, а именно - корректную регулярку в нём для 1-го случая, и отдельно такой же кусок кода для 2-го случая (да-да, можно просто дублировать, не нужно в рамках одно куска всё это реализовывать, такие свои особенности :))