JSON String Escape / Unescape
Экранировать и деэкранировать строки для вставки в JSON.
Как это работает
Нужно вставить кусок текста с кавычками и переносами строк прямо внутрь JSON строки, а вручную расставлять обратные слэши перед каждой кавычкой скучно и чревато пропущенным символом? Json string escape online делает это автоматически, экранируя все специальные символы по правилам формата JSON.
Экранирование превращает обычную двойную кавычку в комбинацию обратный слэш и кавычка, перенос строки в буквенное сочетание обратный слэш и n, а сам обратный слэш дублируется, чтобы не потерять смысл при обратном разборе. Кнопка снятия экранирования делает ровно обратную операцию.
Полезно применять при ручном составлении json payload для тестирования API через curl или Postman, при вставке многострочного текста в конфигурационный json файл, или просто чтобы не изобретать в уме правила экранирования каждый раз заново.
Частые вопросы
Почему в JSON нельзя просто вставить текст с кавычками без экранирования?
Кавычка внутри строки без экранирования будет воспринята парсером как конец самой строки, а не как символ внутри нее, из-за чего вся структура json документа сломается на этом месте.
Экранируются ли символы кириллицы при обработке?
Нет, кириллица и другие не ASCII символы это валидные символы внутри JSON строки, экранированию по правилам формата подлежат только специальные символы вроде кавычки, обратного слэша и управляющих символов.
Что происходит с табуляцией внутри текста при экранировании?
Символ табуляции превращается в сочетание обратный слэш и латинскую t, ровно так, как того требует спецификация JSON для представления непечатаемых управляющих символов внутри строки.
Можно ли использовать результат экранирования сразу в теле запроса curl?
Да, результат готов для вставки внутрь двойных кавычек json объекта в теле запроса, дополнительная обработка обычно не требуется, разве что сама командная строка потребует своего собственного экранирования кавычек снаружи.