Экранирование строк (Escape / Unescape)
Один инструмент для экранирования и обратного преобразования строк для JSON, JavaScript, HTML, XML, компонентов URL, регулярных выражений, SQL, CSS и аргументов оболочки.
Символов: 37 · байт: 39 (UTF-8)
Символов: 0 · байт: 0 (UTF-8)
Работает полностью в вашем браузере. Ваши данные никуда не загружаются.
Что такое Экранирование строк?
Многоформатный экранировщик: выберите, куда пойдёт текст (строка JSON, строка JavaScript, HTML, XML, компонент URL, регулярное выражение, строковый литерал SQL, строка CSS или аргумент оболочки), и получите правильно экранированный результат — или выполните обратное преобразование.
Как пользоваться Экранирование строк
- Выберите Экранировать или Снять экранирование.
- Укажите Формат.
- Введите или вставьте текст в поле Ввод; результат появится в поле Вывод.
- Нажмите Сделать входными данными, чтобы проверить, что снятие экранирования возвращает исходный текст.
Пример
He said "hi" C:\temp
He said \"hi\" C:\\temp
Формат JSON, режим экранирования.
Когда использовать Экранирование строк
Подходит для быстрых преобразований при разработке и отладке. Для SQL в приложениях лучше использовать параметризованные запросы, а не экранирование; формат SQL следует стандарту ANSI ('') и не учитывает экранирование обратной косой чертой в MySQL.
Как работает Экранирование строк
Для каждого формата действуют свои правила: JSON использует правила JSON.stringify (\", \\, \n, \u001f); JavaScript добавляет безопасные для \' экранирования и \xHH; HTML экранирует & < > " ' и при обратном преобразовании раскрывает все сущности HTML5; XML использует пять предопределённых сущностей; URL следует правилам encodeURIComponent; регулярные выражения экранируют обратной косой чертой . * + ? ^ $ { } ( ) | [ ] \ / -; SQL удваивает одинарные кавычки (стандартный SQL); CSS экранирует кавычки, обратные косые черты и управляющие символы; оболочка использует одинарные кавычки POSIX.
Распространенные Случаи Использования
- Помещение многострочного текста в строку JSON
- Экранирование буквальной строки для использования в регулярном выражении
- Запись литерала SQL с апострофами
- Снятие экранирования со строк JSON, скопированных из логов
Часто Задаваемые Вопросы
Чем формат JSON отличается от формата JavaScript?
В JSON допустим только фиксированный набор экранирований и двойные кавычки; формат JavaScript дополнительно экранирует одинарные кавычки независимо от контекста и использует \xHH для управляющих символов.
Достаточно ли экранирования SQL для защиты от инъекций?
Удвоение кавычек корректно для стандартных строковых литералов SQL, но надёжная защита — параметризованные запросы.
Экранирует ли формат регулярных выражений всё необходимое?
Он экранирует все символы, имеющие особое значение в регулярных выражениях JavaScript, включая / и -.