Запись и расшифровка HTML-сущностей ( , ,  ), URL encode и decode: пробел как %20 или +, разбор адресов построчно. JSON, JavaScript, Unicode — в браузере.
Частые сущности с кодами. «Вставить» добавляет сущность в текст, «Копировать» кладёт её в буфер обмена
Ищите по имени, символу, коду в любой записи или слову из пояснения
| Сущность | Символ | Код | Что это | Действия |
|---|---|---|---|---|
| 160 · U+00A0 | неразрывный пробел — браузер не переносит строку в этом месте | ||
& | & | 38 · U+0026 | амперсанд, начало любой ссылки | |
< | < | 60 · U+003C | знак «меньше», он же открывающая угловая скобка тега | |
> | > | 62 · U+003E | знак «больше», он же закрывающая угловая скобка тега | |
" | " | 34 · U+0022 | двойная кавычка | |
' | ' | 39 · U+0027 | апостроф, он же одинарная кавычка | |
© | © | 169 · U+00A9 | знак охраны авторского права | |
® | ® | 174 · U+00AE | зарегистрированный товарный знак | |
™ | ™ | 8482 · U+2122 | знак торговой марки | |
— | — | 8212 · U+2014 | длинное тире | |
– | – | 8211 · U+2013 | короткое тире, оно же цифровое | |
− | − | 8722 · U+2212 | математический минус — шире дефиса | |
« | « | 171 · U+00AB | открывающая ёлочка | |
» | » | 187 · U+00BB | закрывающая ёлочка | |
“ | “ | 8220 · U+201C | открывающая двойная лапка | |
” | ” | 8221 · U+201D | закрывающая двойная лапка | |
… | … | 8230 · U+2026 | многоточие одним символом | |
° | ° | 176 · U+00B0 | знак градуса | |
× | × | 215 · U+00D7 | знак умножения | |
÷ | ÷ | 247 · U+00F7 | знак деления | |
± | ± | 177 · U+00B1 | плюс-минус | |
· | · | 183 · U+00B7 | средняя точка, разделитель в списках | |
• | • | 8226 · U+2022 | маркер пункта списка | |
§ | § | 167 · U+00A7 | знак параграфа | |
¶ | ¶ | 182 · U+00B6 | знак абзаца | |
€ | € | 8364 · U+20AC | знак евро | |
‰ | ‰ | 8240 · U+2030 | знак промилле |
Один и тот же текст живёт в разных мирах и в каждом подчиняется своим правилам. Угловая скобка в HTML начинает тег, кавычка в JSON закрывает строку, обратный слэш в JavaScript открывает escape-последовательность, а пробел в адресе недопустим вовсе. Экранирование — это способ сказать «это просто символ» на языке того формата, куда текст попадает, и ошибиться тут легко: незакрытая кавычка ломает файл целиком, а не одну строку.
Инструмент закрывает весь круг этих задач в одном месте: HTML и XML, строка для JSON и для JavaScript, адрес и его параметры, запись символов через код Unicode. У ссылок на символ выбирается форма записи — десятичная ( ), шестнадцатеричная ( ) или именованная ( ), — а справочник под таблицей подсказывает имя и код частого символа и умеет вставить его прямо в текст. У адресов свои настройки: чем записать пробел, какие символы не кодировать, разбирать ли список построчно. Направление переключается списком, есть и автоопределение, а кнопка «Поменять местами» делает обратную операцию одним нажатием — так видно, что текст восстанавливается без потерь.
Под результатом видно, что именно изменилось: сколько мест заменено, какие символы и во что именно они превратились, а также подсветка прямо в готовом тексте. Это отвечает на главный вопрос при копировании текста между форматами — не поехало ли что-то, о чём я не думал.
HTML-сущность — это запись символа, которую браузер покажет как знак, а не как часть разметки. Выберите формат «HTML» и направление «Экранировать»: угловые скобки станут < и >, амперсанд — &, кавычки — " и '. Уровень «Всё не-ASCII» заменяет ссылками ещё и все буквы вне латиницы, а форма ссылок задаёт их вид: десятичный (П), шестнадцатеричный (П) или именованный ( ) там, где имя есть. В XML всё то же самое, но апостроф записывается именованной ссылкой '.
Направление «Разэкранировать» читает все три вида ссылок: именованные ( , ©, «), десятичные ( ) и шестнадцатеричные ( ), причём регистр букв в коде не важен. Неизвестная или битая ссылка остаётся в тексте как есть: так опечатка видна, а не превращается в пропавший символ. Имён в HTML больше двух тысяч, поэтому в разбор включены частые — типографика, валюта, математика, стрелки, греческий алфавит, — а любой другой символ однозначно записывается числовым кодом.
Зависит от того, зачем он стоит. Нужен обычный пробел — ставьте обычный пробел или  . Нужно, чтобы браузер не схлопнул серию пробелов и не перенёс строку в этом месте, — значит, и нужен: он же  ,  , U+00A0. Сохранить пробелы можно и без разметки: white-space: pre-wrap в CSS. Инструмент умеет и обратное — флажок «Пробелы — неразрывными» заменяет пробелы на , — а при разэкранировании становится именно неразрывным пробелом, а не обычным: выглядит он так же, а переносится иначе.
Оба варианта верны, но в разных местах. %20 универсален: он работает и в пути адреса, и в значении параметра, и его понимает любой сервер. Плюс означает пробел только в query-строке формы (application/x-www-form-urlencoded), а в пути адреса плюс — это плюс. Переключатель «Пробел записывать плюсом» выбирает запись, по умолчанию пробел уходит в %20. При раскодировании есть парный флажок «Считать + пробелом»: он нужен для строк вида ?q=привет+мир, а закодированный %2B остаётся плюсом в любом случае.
Выберите формат «URL», направление «Разэкранировать» и уровень. «Значение параметра» использует decodeURIComponent и раскодирует всё, включая %2F и %3F; «Адрес целиком» использует decodeURI и оставляет служебные %2F, %3F и %23 закодированными, чтобы не развалить структуру адреса. Если непонятно, закодирован текст или нет, поставьте «Определить автоматически»: инструмент решит это сам и напишет, что выбрал. Некорректные последовательности процентов остаются как есть. При обратном кодировании помогает список «Не кодировать символы»: он оставляет перечисленные знаки как есть, даже если уровень их кодирует, — можно оставить :/?&=#, и адрес останется узнаваемым, а буквы и пробелы всё равно уйдут в проценты. Список сильнее уровня, но не отменяет запись пробела плюсом.
Инструмент обрабатывает каждую строку списка самостоятельно, а переносы оставляет переносами. Без этого флажка перенос строки — обычный символ: в URL он превращается в %0A, в JSON и JavaScript — в \n, и список адресов слипается в одну строку. С флажком можно вставить сотню адресов по одному в строке и получить столько же строк в результате. Направление при автоопределении выбирается один раз на весь список, а не на каждую строку.
Нет. Экранирование и разэкранирование считаются целиком в браузере на JavaScript: текст не передаётся никуда и не сохраняется. Инструментом можно пользоваться офлайн, а исходники вроде ключей или паролей остаются на вашем компьютере.