2010-10-05 3 views
281

Как заменить пустые строки в Notepad ++? Я попробовал найти и заменить пустыми строками в поиске, и ничего не заменил, но это не сработало; он, вероятно, нуждается в регулярном выражении.Удаление пустых строк в Notepad ++

ответ

317

Вам нужно что-то вроде обычного выражения.

Вы должны быть в режиме Extended

Если вы хотите, чтобы все линии в конечном итоге на однолинейной использования \r\n. Если вы хотите просто удалить пустые строк, используйте \n\r как @Link изначально предлагаемый.

Заменить любое выражение ничем.

+15

Если сначала выберите «extended' в режиме поиска. – q0987

+0

Следует отметить, что замена всех на '\ r \ n \ r \ n' может привести к объединению двух ваших линий. '23' Текст в строке 23!' \ R \ n' '24 \ r \ n'' 25 \ r \ n'' 26'Line 26 text.'r \ n' может быть сжат до '23' Текст в строке 23! Текст строки 26. –

+6

Чтобы ваши линии не соединялись, вам нужно искать '\ r \ n \ r \ n' и заменить на' \ r \ n'. –

13

В блокноте ++ нажмите CTRL + H, в режиме поиска нажмите на кнопку «Расширенный (\ n, \ r, \ t ...)», затем введите поле «Найти что»: \ r \ n (короткий для CR LF) и оставить «заменить» поле пустым ..

Наконец ударил заменить все

+0

опечатка об этом .. – Bassem

+0

На самом деле, я попробовал, посмотрю мое разъяснение в своем ответе. * Ты был на что-то!* – Brad

+3

Предполагается, что окончание строк - это Windows (CRLF), хотя если ваш файл сохранен с окончанием строки Unix, поиск выполняется только для '\ n'. – BoltClock

10

Ну, я не уверен, что регулярное выражение или ситуации ..

Как насчет CTRL + A, выберите меню TextFX -> TextFX Edit -> Delete Blank Lines и альт, все пустые строки исчезли.

Примечание стороны - если строка пустая, т.е. не содержит пробелы, это будет работать

121

Там есть плагин, который добавляет в меню под названием TextFX. Это меню, в котором находится головокружительное множество вариантов быстрого редактирования текста, дает человеку возможность быстро менять кодировку. В этом меню вы можете найти выбор, такие как котировки Drop, удалить пустые строки, а также Unwrap и Снова упаковывайте неиспользуемый Текст

Выполните следующие действия:

TextFX > TextFX Edit > Delete Blank Lines 
TextFX > TextFX Edit > Delete Surplus Blank Lines 
+18

для любого, как я, который не может найти это, это плагин, который вы устанавливаете, и он работает как шарм. ;-) – yitwail

+6

Не уверен, когда, но, похоже, этот плагин установлен по умолчанию. Немного не по теме, но одна из других невероятно полезных функций, в разделе TextFX> TextFX Tools', является сортировкой строк, при необходимости удаляя дубликаты. Очень удобный способ сделать Unix 'sort -u' в ящике Windows без cygwin или unxutils или аналогичного. –

+2

[Вот ссылка на плагин TextFx.] (Http://sourceforge.net/projects/npp-plugins/files/TextFX/) Я нашел это очень полезным. Использование: 'Настройки> Импорт> плагин ...' и найдите файл dll для его установки. Он становится пунктом меню «Плагины» –

9

Ctrl + H.

найти - \ r \ r заменить на - \ r.

+0

Это работает для меня, удаляя лишнюю строку, в смысле нахождения double \ r replace с помощью одного \ r. Благодаря!! – genpet

+0

Это сработало хорошо, однако я обнаружил, что мне нужно было запустить его несколько раз в моем документе, прежде чем все экземпляры \ r \ r исчезли. Я не знаю, почему. – Hawkwing

6

Это, очевидно, не работает, если пустые строки содержат вкладки или пробелы. Многие веб-страницы (например, http://www.guardian.co.uk/) содержат эти белые строки в результате неправильного HTML-редактора.

Удалить белое пространство, используя регулярное выражение следующим образом:

шаблон изменения: [\ т] + $ в ничто.

где [\ t] соответствует любой вкладке или пробелу. «+» соответствует одному или нескольким вхождениям, а «$» обозначает конец строки.

Затем используйте блокнот ++/textFX для удаления одиночных или дополнительных пустых строк. Убедитесь, что эти пустые строки не являются значимыми в данном контексте.

0

Простая альтернатива для удаления пустого пространства от пустых строк:

  1. TextFX> TextFX Edit> Обрезать трейлинг пространства

Это удалит все завершающие пробелы, включая конечные пробелы в пустые строки. Убедитесь, что конечные пробелы не значительны.

57
  1. блокнота ++
  2. Ctrl-H
  3. Выберите Regular Expression
  4. Введите ^[ \t]*$\r?\n в найти то, что, оставьте заменить пустым. Это будет соответствовать всем строкам, начинающимся с пробела и заканчивающимся возвратом каретки (в данном случае окном crlf)
  5. Нажмите кнопку «Найти далее», чтобы убедиться, что она соответствует только пустым строкам.
+1

Мне пришлось использовать этот метод вместо некоторых других методов, чтобы заставить его легко работать в макросе. Спасибо. –

+0

Этот метод также работал для меня. Благодарю. –

+0

еще более короткие и меньшие замены, необходимые из-за нескольких пустых строк, будут заменены сразу:^\ s * $ \ r? \ N – njank

3
  1. Edit >> Blank Операции >> Обрезка Ведущие и ведомые пробелы (для удаления черных вкладок и пробелы в пустых строках)
  2. Ctrl + H, чтобы получить окно заменить и заменить шаблон: ничего (выбрать регулярное выражение)

Примечание: шаг 1 удалит код intendation осуществляется с помощью вкладок и пустых пространств

3

CTRL + A, выберите меню TextFX -> TextFX Edit -> Delete Blank Lines, как было предложено выше.

Но если строки содержат некоторое пространство, то переместите курсор к этой строке и сделайте CTRL + H. В поле «Найти что:» будет показано пустое место и в разделе «Заменить на» оставьте его пустым. Теперь все пробелы удаляются, а теперь попробуйте CTRL + A, выберите меню TextFX -> TextFX Edit -> Удалить Пустые строки

391

Существует теперь встроенный способ сделать это, начиная с версии 6.5.2

Edit -> Line Operations -> Remove Empty Lines или Remove Empty Lines (Containing Blank characters)

Screenshot of removing empty lines

+13

Super Awesome +1 –

+12

Это самый простой вариант. – Pupil

+3

, если вы используете последнюю версию Notepad ++, вы обязательно должны использовать этот совет. – amenthes

0

некоторые из приведенных выше выражений и расширенных выражений не работает для меня, но регулярное выражение «$ \ п $» сделал.

9

Вы можете искать следующее регулярное выражение: ^(?:[\t ]*(?:\r?\n|\r))+ и заменить его на пустое поле

4

enter image description here

Иногда \ п \ г и т.д. не работают, здесь, чтобы понять это, что должно быть вашим на самом деле регулярное выражение ,

Преимущество этого трюка: Если вы хотите заменить его в несколько файлов одновременно, вам понадобится этот метод. Выше не будет работать ...

1

/n/r предполагает определенный тип разрыва строки.Чтобы настроить таргетинг на любую пустую строку, вы также можете использовать:

^$ 

Это говорит о любой строке, которая начинается, а затем не заканчивается ничем. Это скорее всего. Замените ту же пустую строку.

11

Это работает для меня:

  1. Нажмите ctrl + h (Ярлык для замены)
  2. Написать один из следующих регулярных выражений в find what окне. [\n\r]+$ или ^[\n\r]+
  3. Оставить Replace with поле пустым
  4. В Search Mode выберите Regex
  5. Нажмите на Replace All

    Готово!
+0

Это единственное решение, которое не испортило мои огромные файлы .csv. Благодаря! – VME

+0

Добро пожаловать @VME :) –

1

я не видел совмещенных как ответ, так что поиск^\ х + $ и заменить {ничего}

^\s+$ means 
^start of line 
    \s+ Matches minimum one whitespace character (spaces, tabs, line breaks) 
    $ until end of line 
+0

Если вы хотите несколько строк, вы можете попробовать: '^ \ s +^(\ S)' и заменить на '\ 1'. – jiggunjer

0
  1. Нажмите Ctrl + H (Ярлык для замены).
  2. В Найти зону, тип ^\R (для точных пустых строк) или ^\h*\R (только для пустых линий с пробелами).
  3. Оставьте Замените на зону пусто.
  4. Проверьте Оберните вокруг вариант.
  5. Выбрать Регулярное выражение Режим поиска.
  6. Нажмите на Заменить все button.

enter image description here

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