Перейти к содержимому
PulsarKit

Найти и заменить текст

Заменяйте слова, фразы или совпадения по регулярным выражениям — до двадцати правил за один проход, с поиском целых слов для любого алфавита.

Перетащите файлы сюда

.txt, .md, .csv, .json, .html · до 5 МБ

Как заменить

  1. 1

    Вставьте текст

    Или перетащите файл .txt, .md, .csv, .json или .html.

  2. 2

    Задайте, что искать и на что менять

    Добавьте еще пары, чтобы сделать несколько замен за один проход.

  3. 3

    Замените и скопируйте

    Результат появится ниже. Его можно сразу скопировать или скачать.

Поиск целых слов, который работает и для русского

Почти везде режим поиска целых слов устроен через границу слова в регулярных выражениях. А она определена через символы A–Z, 0–9 и подчеркивание. В любом другом алфавите граница попадает не туда или не срабатывает совсем: на кириллице поиск целого слова не работает. Здесь режим целых слов построен на Unicode-классах букв и цифр. Поэтому русский, греческий, арабский и акцентированный латинский обрабатываются так же, как английский. При этом инструмент делает ровно то, что нужно: находит «cat», не трогая «cats».

Знак доллара остается долларом в обычном режиме

В строке замены $1 значит первую захваченную группу, а $& — все совпадение. В режиме regex это полезно, а в остальных режимах — ловушка: введете цену $100 в качестве замены, и наивный инструмент съест ее часть. Здесь доллар в обычном и в режиме целых слов экранируется автоматически, так что результат строго соответствует тому, что вы ввели. Специальные значения работают только в режиме regex, где вы их явно включили.

Несколько правил за один проход, в заданном порядке

До двадцати пар «найти и заменить» выполняются одна за другой, и порядок имеет значение: вывод первой замены становится входом для второй. Так сделано намеренно, и это удобно: можно сначала нормализовать текст, а потом работать уже с нормализованной формой, за один проход по файлу. С этого же стоит начать, если результат вас удивил. Второе правило могло сработать на том, что создало первое, и в выходном тексте это видно, а в исходном — нет.

Регулярное выражение не сможет повесить вкладку

Некоторые шаблоны занимают экспоненциальное время даже на коротком входе. Классический пример — повтор в повторе, который на двадцати пяти символах может работать дольше, чем вы готовы ждать. И запущенный движок регулярных выражений нельзя прервать снаружи. Поэтому замены по regex здесь запускаются в отдельном worker-потоке с лимитом в три секунды. Когда лимит кончается, весь поток уничтожается. Страница остается отзывчивой, вы получаете понятное сообщение, а не зависшую вкладку, и совет перейти на обычный текстовый поиск почти всегда оказывается верным.

Ваш текст не покидает браузер

Чтение файла, поиск и замены выполняются на вашем устройстве. Никакой загрузки, никаких серверов, учетных записей и хранения данных — даже worker-поток для регулярных выражений работает внутри браузера. Закройте вкладку, и все исчезнет.

Частые вопросы

Как работает режим regex?

Поле поиска используется как регулярное выражение JavaScript с включенной поддержкой Unicode. Захватывающие группы, просмотр назад (lookbehind) и property-escape вроде \p{L} поддерживаются. Если шаблон некорректен, вы увидите сообщение об ошибке от самого движка, а не расплывчатый «сбой».

Что значит $1?

В режиме regex это подставляет первую захваченную группу в строку замены, поэтому поиск по (\w+) (\w+) и замена на $2, $1 меняют два слова местами. В обычном режиме и в режиме целых слов знак доллара воспринимается буквально.

Чем поиск целых слов отличается от обычного?

Обычный поиск находит «cat» внутри «cats» и «concatenate». Поиск целых слов срабатывает только там, где по обе стороны не буква, не цифра и не подчеркивание — в любом алфавите, а не только в латинице.

Почему замена остановилась по таймауту?

Шаблон работал дольше трех секунд. Почти всегда это значит вложенные повторы вроде (a+)+, которые заставляют движок перебрать экспоненциальное число вариантов. Перепишите выражение без вложенного повтора или используйте обычный текстовый поиск: этого достаточно.

Можно ли заменить сразу несколько разных слов?

Да, до двадцати пар. Они выполняются по порядку, так что каждая следующая пара видит текст уже после срабатывания предыдущих.

Мой текст куда-то загружается?

Нет. Все работает в вашем браузере, ничего не отправляется на сервер.

Какой максимальный размер файла?

До 5 МБ или миллиона символов. Более крупные файлы сначала пропустите через инструмент разбиения текста.

Похожие инструменты

Регистр текстаUPPERCASE, Title Case, camelCase и еще пять вариантов — меняются прямо во время набора, с языковыми правилами, которые правильно обрабатывают ß, İ и ё.Удалить дубликатыУдалите дубли из списка ключевых слов или любого другого списка, не меняя порядок строк, — или оставьте только те строки, что повторяются.Сортировка строкПо алфавиту, как числа, по длине или вразбивку — с ё, ä и ñ на своих местах, а не в самом конце.Счетчик словСимволы, слова, предложения, абзацы и время чтения обновляются прямо во время набора — с лимитами для поста, SMS и метаописания перед глазами.Сравнить текстДве колонки, удаления красным, добавления зеленым. Измененные слова подсвечены внутри каждой строки.Форматер JSONРасставьте отступы, минифицируйте или только проверьте JSON-файл. Ошибки укажем по строке и столбцу, скрытые проблемы назовем прямо.