Текст и строки

Убрать лишние пробелысохраняя нужные отступы

Начните с концов строк и сравните метки, прежде чем заменять исходный текст.

Убрать лишние пробелы

Исходный текст

Исходник с видимыми пробелами

··заголовок··текст··␍↵
⇥элемент⇥значение·↵
цена⍽10␍↵
····отступ··␍↵

Предпросмотр результата

··заголовок··текст␍↵
⇥элемент⇥значение↵
цена⍽10␍↵
····отступ␍↵

Показано: 5 / 5 строк, 59 единиц UTF-16. Экспорт содержит весь результат.

· пробел ⇥ табуляция ⍽ NBSP ↵ LF ␍ CR ␍↵ CRLF. Цветные метки служат только для просмотра.

Обработка выполняется в этом браузере; текст не загружается на сервер.

Параметры очистки

Порядок: NBSP → концы → начала → повторные пробелы → табуляции.

Без разбора синтаксиса: конечные пробелы могут быть важны в Markdown. Разворачивание действует везде, сжатие — только в отступах.

Вход/выход: по 1 000 000 единиц UTF-16 и 50 000 строк. Переводы строк сохраняются; скачивание в UTF-8.

Изменено строк: 3 · удалено 5 / добавлено 0 · символов 64 → 59

Удалено/добавлено суммирует расход и создание по этапам, а не минимальный diff. До/после считает кодовые точки.

Убрать лишние пробелы бывает нужно после копирования списка, кода или фрагмента страницы. Обычный пробел, табуляция и неразрывный пробел могут выглядеть одинаково, но по-разному влияют на поиск, переносы и импорт данных.

Исходный текст остаётся слева, а выбранные правила формируют результат справа. В примере есть отступы и разные переводы строк. По умолчанию удаляются только обычные пробелы и табуляции в конце каждой строки.

Убрать лишние пробелы и проверить изменения

Сохранить начало каждой строки

Убрать лишние пробелы можно без удаления отступов. Начальная настройка сохраняет ведущие пробелы и табуляции, а также каждый исходный разделитель CRLF, LF или CR. Очистку начала и преобразование отступов нужно выбрать отдельно.

У двух текстов совпадают отступы и метки перевода строки; справа исчезают только лишние пробелы в конце строк.

Различать похожие промежутки

Цветные метки отдельно показывают обычные пробелы, табуляции и NBSP. Включите нужное преобразование и оцените результат до применения. Копирование и скачивание используют настоящий текст без добавленных для просмотра точек и стрелок.

Стрелка табуляции и полая метка неразрывного пробела превращаются в точки обычных пробелов, а блоки текста остаются прежними.

Проверка перед заменой исходного текста

01

Выбрать минимальное изменение

Сначала включена только очистка концов строк. Очистка начала удаляет и отступ, поэтому её стоит выбирать осознанно. Загрузка примера и очистка поля показывают будущую замену перед подтверждением.

02

Настроить момент обновления

Автоматический просмотр ждёт 350 мс после правки. Выключите его, чтобы запускать обработку кнопкой или Ctrl/Cmd+Enter. Любое изменение текста или правила сразу блокирует копирование, скачивание и применение устаревшего результата.

03

Применить с возможностью возврата

Сравните число изменённых строк и количество символов до применения. Отмена восстанавливает вход, выход и настройки предыдущего состояния. Переключение видимых меток не запускает очистку повторно и не меняет экспортируемый текст.

Отдельные правила для разных промежутков

Независимая обработка краёв

Можно удалить пробелы в начале строки или удалить пробелы в конце строки отдельными переключателями. Вместе с обычными пробелами обрабатываются табуляции у выбранного края. Освободившаяся строка остаётся пустой, но её разделитель не удаляется.

Сжатие повторных пробелов в содержимом

Два или более последовательных символа U+0020 заменяются одним. Начальный префикс из пробелов и табуляций защищён. Табуляции между словами это правило не меняет: для них существует отдельное преобразование.

Явная замена NBSP

Неразрывные пробелы U+00A0 заменяются обычными U+0020 до очистки краёв и сжатия. После этого в соответствующем месте становится возможен перенос. Запись   остаётся последовательностью символов: декодирования HTML здесь нет.

Преобразование по позициям табуляции

Чтобы заменить табуляции пробелами, выберите ширину 2, 4 или 8. Каждая табуляция во всём тексте разворачивается до следующей позиции. Обратная замена действует только на пробелы начального отступа; остаток, не доходящий до позиции, сохраняется.

Сохраняемые данные и ограничения

Не удаляет весь невидимый Unicode
Полноширинные и узкие неразрывные пробелы, символы нулевой ширины, соединители и BOM остаются. Правила затрагивают обычный пробел, Tab и отдельно включённый NBSP, а не все символы, которые выглядят пустыми.
Структура строк остаётся прежней
LF, CRLF и CR сохраняются по отдельности, включая пустые строки и последний перевод строки. Объединения абзацев, извлечения PDF, импорта файлов и смены кодировок нет. Скачивается текущий текст, закодированный в UTF-8. Если очистка промежуточной строки слила бы отдельный CR со следующим LF в CRLF, её исходные пробельные символы сохраняются; число таких строк выводится отдельно.
Синтаксис кода не анализируется
Удаление отступов может изменить программу. Разворачивание табуляций во всём тексте может затронуть столбцы TSV или команды Makefile. Даже конечные пробелы могут задавать принудительный перенос Markdown. Проверяйте результат там, где он будет использоваться.
Ограничения действуют с обеих сторон
Вход и выход допускают по 1 000 000 кодовых единиц UTF-16 и 50 000 строк. Превышение после разворачивания Tab также отклоняется. Для одиночного суррогата указывается позиция. Просмотр растёт порциями; экспорт содержит весь допустимый результат.
Столбец не равен экранной ячейке
Каждая кодовая точка Unicode считается одним столбцом, включая иероглифы и комбинируемые знаки. Это однозначное правило для позиций табуляции, но оно не воспроизводит ширину всех шрифтов и терминалов.

Убрать лишние пробелы: частые вопросы

Можно ли очистить начало или конец каждой строки?

Да, эти края выбираются независимо. По умолчанию очищается только конец. Начало нужно включить отдельно, поскольку его очистка удаляет отступы. Переводы строк не затрагиваются ни одним из двух переключателей.

Сжимаются ли повторные пробелы между словами?

Да, если включить соответствующее правило. Последовательность обычных пробелов сокращается до одного; одиночный разделитель слов остаётся. Начальные отступы защищены, а табуляции и NBSP требуют отдельных настроек.

Меняется ли содержимое текста?

Буквы и знаки препинания остаются, однако пробельные символы тоже могут нести смысл. Сначала меняется только предварительный результат. Исходник заменяется после применения, которое можно один раз отменить вместе с восстановлением прежнего вывода.

Можно ли безопасно заменить пробелы на табуляции во всём проекте?

Этот инструмент обрабатывает только текст в текущем поле и не редактирует файлы проекта. Обратное преобразование затрагивает лишь начальные отступы. Для массового изменения проекта нужны средства редактора, контроль версий и проверки, соответствующие языку.

Как обработать неразрывные пробелы NBSP?

Включите замену U+00A0 на обычный пробел. Она выполняется перед очисткой концов, начал и повторений; Tab преобразуется последним. В счётчиках замена NBSP означает один израсходованный и один созданный символ, а не уменьшение длины на один.

Шаг дал неожиданный результат?

Проверьте следующий фрагмент

Попробуйте убрать лишние пробелы в примере, затем вставьте свой текст и примените только те изменения, которые действительно нужны.

Сначала просмотр, затем применение с одной отменой.