2014-12-13 6 views
2

Мой текстовый файл выглядит следующим образом:Notepad ++: Невозможно удалить пустую строку

line 1  

line3 

Я пытаюсь удалить пустую строку. Я выбираю «расширенный» режим поиска в окне «Замена» Notepad ++ и введите \r\n или \n\r, но не может его сопоставить. Итак, как это сделать? Я удалил пустые строки из большого количества файлов успешно, но теперь я не могу удалить это.

+0

это известная проблема с Notepad ++ и сопоставления с помощью регулярных выражений многострочный, а также ... – abc123

+0

Может быть, просто '\ r' или' \ n' помогает? Windows использует '\ r \ n', Linux' \ n' и Mac '\ r', чтобы указать конец строки. Эта проблема может возникнуть при обмене текстовыми файлами между разными ОС. NP ++ имеет возможность показывать все невидимые символы, это помогает идентифицировать его.Кстати: для старых линейных принтеров возврат каретки (перемещение головки принтера влево) и новая строка (перемещение бумаги) - две отдельные команды. Следовательно, Вин делает это правильно. – sweber

ответ

2

Попробуйте это регулярное выражение заменить операцию в Найти в файлах окно:

  • Найти что: \R*(\R)

  • Заменить: \1


EDIT: Чтобы удалить последнюю CR/LF, запустить этот дважды (из-за некоторые особые причины CR/обработок LF, он потребляет только один символ перспективы):

  • Найти: ^(.*)\R+$

  • Заменить: \1

  • Режим: Regular Expression

  • Вариант . matches newline: ON

+0

Это сработало, но оно не удаляет последнюю пустую строку (последняя пустая строка - последняя строка) – Ban

+0

@Ban - запустить добавленную часть дважды - см. Редактирование – miroxlav

+0

Работайте как очарование! Большое спасибо, miroxlav! – Ban

1

У попробовать с:

Найти: ^\R
Заменить: <NOTHING>

Где \R стенды для любого символа разрыва строки, \n или \r или \r\n.

Может быть у вас есть пробелы в строке, в данном случае:

Найти: ^\s*\R
Заменить: <NOTHING>

+0

Я использую 6.6.9 Блокнот ++ – Ban

+0

Это действительно странно. С той же версией он работает очень хорошо для меня. – Toto

+0

Здравствуйте, я набираю \ R, и он работает, но он удаляет всю строку прерывания. Я только хочу удалить пустую строку – Ban

1

насчет меню Edit>Operations Line>Удалить Empty Линии? В этом случае, согласны ли вы с использованием встроенных функций?

+0

Привет, я не вижу Удалить пустые строки. У меня много файлов. Итак, мне понадобится код регулярного выражения для замены. – Ban

+0

@Ban - исправлено, попробуйте сейчас – miroxlav

+0

Спасибо! Он работает как шарм. Однако у меня много файлов. Таким образом, я не могу открыть каждый файл и удалить пустую строку. Мне нужен код регулярного выражения, чтобы удалить пустую строку во многие файлы. – Ban

Смежные вопросы