Допустим, у меня есть текстовый файл со следующими девятью строками:
foo
bar
baz
qux
quux
Как я могу использовать Sublime Text 2, чтобы удалить все четыре пустых / пустых строки, оставив только пять строк?
Допустим, у меня есть текстовый файл со следующими девятью строками:
foo
bar
baz
qux
quux
Как я могу использовать Sublime Text 2, чтобы удалить все четыре пустых / пустых строки, оставив только пять строк?
Выделите текст
Нажмите:
Убедитесь, что вы выбрали «регулярное выражение», нажав:
Найдите что: ^\n
или ^(\r|\n\r?)
Заменить на: (ничего, оставьте поле пустым).
^(\r|\n\r?)
, чтобы скрыть все возможные разрывы строк.
- person Haris Krajina; 07.11.2012
^[\s]*?[\n\r]+
- person Crates; 29.08.2014
?
, поскольку *
также соответствует нулю, а \s*
будет соответствовать дополнительному '\ r', например, при редактировании текста Windows в среде Linux, поэтому ^\s*$
делает свое дело.
- person drevicko; 01.11.2014
Регулярное выражение в ответе Хьюго правильное, если в строке нет пробелов. Если есть пробелы, regexp может быть ^\s+$
^[\s]*?[\n\r]+
. Я это проверил, и это работает.
- person Crates; 29.08.2014
Для таких задач также существуют плагины ST2 / ST3. Мне нравятся эти двое:
В первом есть два метода удаления пустых / ненужных строк. Один из них назвал Delete Surplus Blank Lines
, что круто. Удаляет только те строки, за которыми следует еще одна пустая строка.
Решение Найти / Заменить:
Regex Find: \s+
Заменить на: // одиночный пробел
Даже не знаю, как все это работает, но я попробовал ^\s*$
, но ничего не вышло (остались пустые строки).
Вместо этого ^\s*
у меня работает
{sublime text 3}
Пришлось использовать:
замените \ n ^ \ s * \ n на \ n
Плагин https://github.com/NicholasBuse/sublime_DeleteBlankLines вообще ничего не сделал.
Комментарии от @crates работают на меня,
Шаг 1. Просто нажмите ctrl + H
Шаг 2: нажмите кнопку RegEX
Шаг 3: напишите это в поиске: ^[\s]*?[\n\r]+
Шаг 4: замените все
Проще, чем я думал. Ctrl + A, за которым следует Ctrl + H Затем выберите регулярное выражение .*
. Замените \n\n
на \n
. Вуаля!
Это более простой способ сделать это без регулярного выражения. вам нужно просто выделить весь текст. затем перейдите в: Edit -> Permute Lines -> Unique.
Это все. и все пустые строки будут удалены.
Вы ищете это:
^\n|^\s+$
он не удалит строку, если впереди есть содержимое с пробелом или вкладками>
e.g.:
они не будут удалены: ... пробел ... abc
... вкладка ... abc
это будет:
... пространство ... ... больше ничего ...
... вкладка ... ... больше ничего ...
Использование нескольких выделений: выберите одну пару разрывов строки, затем используйте Быстрый поиск всех (Alt + F3) или Быстрое добавление Далее (Ctrl + D) несколько раз, чтобы выделить их все; затем нажмите Enter, чтобы заменить их одинарными разрывами строки.
Другой способ: вы можете использовать командную строку cc.dbl
ConyEdit (плагина) для удаления пустых строк или пустых строк.
Также есть «Строки соединения». Если в OSX, выделите весь свой текст и несколько раз нажмите CMD-J, и он свернет ваш выбор по строкам, удалив разрывы строк.
Изменить: этот подход оставит вам все в одной строке, а это не то, о чем вы просили.
ctrl-q
(макрос записи), cmd-j
(строки соединения), down arrow
, ctrl-q
(конец макроса). Затем shift-ctrl-q
повторять сколько угодно раз ...
- person ptim; 13.02.2015
Для тех, кому интересен превосходный текстовый редактор, неофициальная-документация может быть интересной!
Есть замечательный пакет (для Sublime 2 и 3) под названием «Trimmer», который удаляет пустые строки. Он также делает много других полезных вещей.
См. Это: https://packagecontrol.io/packages/Trimmer
Чтобы найти лишние пробелы и пустые строки, нажмите Ctrl + Shift + F Выберите Регулярные выражения Найти
[\n\r]{2,}
а затем замените на
\n
удалить все виды пробелов в Sublime и Dreamviewr
В моем случае некоторые пустые строки содержали символ юникода пробел нулевой ширины (U + 200b). Чтобы избавиться от пустых строк, в том числе с этим символом Юникода:
\s\x{200b}|^\s
Используя команду «Найти / заменить», попробуйте вставить выделение, начиная с конца строки над пустой строкой и заканчивая в начале строки после пробела. Это работает для одной пустой строки. Вы также можете повторить процесс для нескольких пустых строк. CTRL - H, поместите ваш выбор в поле поиска и поместите одну новую строку в поле замены с помощью копирования / вставки или другого метода.
Если ^\n
не работает должным образом ===> попробуйте .*[^\w]\n