Как заменить пустые строки в Notepad ++? Я попытался найти и заменить пустыми строками в поиске, но ничего не заменить, но это не сработало; это, вероятно, нуждается в регулярном выражении.
Как заменить пустые строки в Notepad ++? Я попытался найти и заменить пустыми строками в поиске, но ничего не заменить, но это не сработало; это, вероятно, нуждается в регулярном выражении.
Ответы:
Вам нужно что-то вроде регулярного выражения.
Вы должны быть в Extended
режиме
Если вы хотите, чтобы все строки заканчивались на одной строкой, используйте \r\n
. Если вы хотите просто удалить пустые строки, используйте \n\r
как предложено @Link.
Замените любое выражение ничем.
\r\n\r\n
и заменять их \r\n
.
\r\n\W*\r\n
заменить и заменить на\r\n
(\r\n|\r|\n)(\s*(\r\n|\r|\n))+
и заменить \r\n
увидеть его в действии здесь: regex101.com/r/qD9dB1/1
Теперь есть встроенный способ сделать это начиная с версии 6.5.2
Edit -> Line Operations -> Remove Empty Lines
или Remove Empty Lines (Containing Blank characters)
Есть плагин, который добавляет меню под названием TextFX
. Это меню, в котором находится множество вариантов быстрого редактирования текста, дает человеку возможность быстро вносить изменения в код. В этом меню вы можете найти варианты, такие как «Удалить кавычки», «Удалить пустые строки», а также «Развернуть» и «Переписать текст».
Сделайте следующее:
TextFX > TextFX Edit > Delete Blank Lines
TextFX > TextFX Edit > Delete Surplus Blank Lines
TextFX > TextFX Tools
- сортировка строк, опционально удаляющая дубликаты. Очень удобный способ сделать Unix sort -u
на Windows-коробке без Cygwin или unxutils или подобного.
Settings > Import > plugin...
и найдите файл dll для его установки. Это становится пунктом менюPlugins
^[ \t]*$\r?\n
что найти, оставьте заменить пустым. Это будет соответствовать всем строкам, начиная с пробела и заканчивая возвратом каретки (в данном случае это windows crlf)^\R
(для точных пустых строк) или ^\h*\R
(только для пустых строк с пробелами).Это сработало для меня:
ctrl + h
(ярлык для замены)find what
поле.
[\n\r]+$
или^[\n\r]+
Replace with
поле пустымSearch Mode
выберитеRegex
Replace All
В notepad ++ нажмите сочетание клавиш CTRL + H, в режиме поиска нажмите переключатель «Расширенный (\ n, \ r, \ t ...)», затем введите в поле «Найти что»: \ r \ n (сокращение от CR LF). ) и оставьте поле "Заменить на" пустым.
Наконец ударил заменить все
\n
.
Ctrl + H.
найти - \ r \ r заменить на - \ r.
Это, очевидно, не работает, если пустые строки содержат вкладки или пробелы. Многие веб-страницы (например, http://www.guardian.co.uk/ ) содержат эти белые линии из-за неисправного редактора HTML.
Удалите пробелы с помощью регулярного выражения следующим образом:
изменить шаблон: [\ t] + $ в ничто.
где [\ t] соответствует либо табуляции или пробел. «+» соответствует одному или нескольким вхождениям, а «$» обозначает конец строки.
Затем используйте notepad ++ / textFX для удаления одиночных или лишних пустых строк. Убедитесь, что эти пустые строки не имеют значения в данном контексте.
1) Ctrl + H
(или Search 🠆 Replace..
) чтобы открыть окно замены.
2) Выберите 'Search Mode'
«Регулярное выражение».
3) В «Find What» типа ^(\s*)(.*)(\s*)$
& в «Заменить» типа\2
^
- соответствует началу строки символа(\s*)
- Соответствует символам пустого пространства(.*)
- Соответствует любым персонажам(\s*)
- Соответствует символам пробелов$
- Соответствует символу конца строки\2
- Обозначает совпадающий контекст 2-й скобкиОбратитесь к https://www.rexegg.com/regex-quickstart.html за дополнительной информацией о регулярных выражениях.
^\r\n
ничем (выберите регулярное выражение)Примечание: шаг 1 удалит ваш код с помощью вкладок и пробелов
CTRL + A, выберите меню TextFX -> Редактирование TextFX -> Удалить пустые строки, как предложено выше, работает.
Но если в строках есть пробел, переместите курсор на эту строку и нажмите сочетание клавиш CTRL + H. Секунд «Найти что» покажет пробел, а в разделе «Заменить на» оставьте его пустым. Теперь все пробелы удалены и теперь попробуйте CTRL + A, выберите меню TextFX -> Edit TextFX -> Удалить пустые строки
Я не видел объединенный ответ как ответ, поэтому найдите ^ \ s + $ и замените {ничем}
^\s+$ means
^ start of line
\s+ Matches minimum one whitespace character (spaces, tabs, line breaks)
$ until end of line
^\s+^(\S)
и заменить на \1
.
эта работа для меня:
SEARCH:^\r
REPLACE: (empty)
\n
и Windows EOL\r\n