Перейти к содержанию

Regex escape

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

Входные данные
Выходные данные

Regex escape

Регулярное выражение обрабатывает символы, такие как . * + ? ^ $ { } ( ) | [ ] и \, как инструкции, а не как буквальный текст. Вставьте имя файла, цену, URL или любую строку, содержащую один из этих символов, и это средство экранирует каждый специальный символ обратной косой чертой, чтобы результат точно соответствовал этому тексту — ничего больше, ничего меньше. Измените направление на снятие экранирования и процесс изменится в обратном порядке: удалите обратные косые черты из шаблона, чтобы восстановить исходную строку.

Опция диалекта определяет, какие символы действительно требуют экранирования. JavaScript и PCRE используют один и тот же набор метасимволов, поэтому шаблон, созданный для одного, работает так же в другом. POSIX Basic Regular Expressions — стандарт для обычного grep и sed — более узкий: символы + ? { } ( ) и | являются обычными буквальными символами, а не метасимволами, поэтому их экранирование пропускается. Включите параметр «Экранировать разделитель (/)» когда шаблон будет записан между косыми чертами, например /шаблон/, чтобы буквальная косая черта не завершила шаблон преждевременно.

Два параметра обрабатывают многострочный ввод. Параметр «Каждую строку как отдельный паттерн» оборачивает каждую строку символами ^ и $, превращая список точных строк в шаблоны, соответствующие всей строке — удобно для построения списков разрешенных или заблокированных элементов. Параметр «Объединить строки в одну альтернацию» идет дальше, объединяя каждую строку в одну группу (?:a|b|c), готовую к прямому вставлению в регулярное выражение. Снятие экранирования изменяет оба процесса в обратном порядке: разделяет альтернацию обратно на строки и удаляет якоря.

Всё работает локально в вашем браузере. Текст и шаблоны, которые вы вставляете — включая имена файлов, токены или пути — никогда не отправляются никуда; экранирование выполняется полностью на вашем устройстве.

FAQ

Какие символы это средство экранирует?
Метасимволы регулярного выражения . * + ? ^ $ { } ( ) | [ ] и \. Точно какие из них требуют обратной косой черты, зависит от выбранного диалекта — например, POSIX BRE рассматривает символы + ? { } ( ) и | как уже буквальные.
В чём разница между диалектами JavaScript, PCRE и POSIX?
JavaScript и PCRE (совместимое с Perl регулярное выражение, используемое многими языками и инструментами) используют один и тот же набор метасимволов для экранирования. POSIX здесь означает Basic Regular Expression — стандарт для обычного grep и sed, где символы + ? { } ( ) и | являются обычными символами, а не метасимволами — поэтому они не экранируются.
Что создает функция «Объединить строки в одну альтернацию»?
Она экранирует каждую строку и объединяет их в одну группу, например (?:кошка|собака|птица), готовую для использования в качестве одного шаблона, соответствующего любой из строк. При переключении на снятие экранирования шаблон в такой точной форме разделяется обратно на отдельные строки.
Может ли функция снятия экранирования когда-нибудь сбиться или выдать ошибку?
Нет. Снятие экранирования удаляет только обратную косую черту, стоящую непосредственно перед признанным специальным символом; любая другая последовательность обратной косой черты или неправильно сформированная оболочка альтернации остаётся ровно так, как была введена, вместо выдачи ошибки.
Мой текст загружается куда-нибудь?
Нет. Экранирование и снятие экранирования работают полностью в вашем браузере — ничто, что вы вставляете здесь, не отправляется на сервер.