Кодирование / декодирование HTML-сущностей
Кодируйте пять специальных символов HTML в сущности, при желании экранируйте все не-ASCII символы или декодируйте именованные, десятичные и шестнадцатеричные сущности обратно в текст.
Кодирование / декодирование HTML-сущностей — Экранируйте пять зарезервированных символов HTML (&, <, >, ", ') в безопасные сущности или декодируйте именованные, десятичные и шестнадцатеричные сущности обратно в обычный текст. Включите «кодировать все не-ASCII», чтобы преобразовать каждый символ выше U+007F в числовую сущность. Декодирование использует собственный HTML-парсер браузера, поэтому любая распознаваемая им сущность разрешается правильно, а вся обработка остаётся в вашем браузере.
Что такое Кодирование / декодирование HTML-сущностей?
Кодирование / декодирование HTML-сущностей — это бесплатный онлайн-инструмент, который преобразует текст в HTML-сущности и обратно. Режим кодирования экранирует пять зарезервированных символов HTML — амперсанд (&), знак «меньше» (<), знак «больше» (>), двойную кавычку (") и апостроф (') — чтобы текст можно было безопасно поместить в разметку или атрибут, не сломав страницу и не открыв уязвимость XSS. Режим декодирования разрешает сущности в любой форме: именованные ссылки вроде © и , десятичные ссылки вроде © и шестнадцатеричные ссылки вроде ©. Веб-разработчики, технические писатели и редакторы CMS используют его, чтобы вставлять примеры кода в HTML, очищать строки, присланные пользователями, или читать как обычный текст насыщенный сущностями фрагмент, скопированный из ленты или экспорта. Переключайтесь между кодированием и декодированием сегментированным переключателем и откройте Настройки, чтобы включить «кодировать все не-ASCII», когда вы также хотите превратить буквы с диакритикой, символы CJK и эмодзи в числовые сущности.
Как пользоваться Кодирование / декодирование HTML-сущностей
- Выберите кодирование или декодирование сегментированным переключателем вверху.
- Вставьте или введите текст в поле ввода; результат появляется в реальном времени в поле вывода только для чтения ниже.
- При кодировании откройте Настройки и отметьте «кодировать все не-ASCII», если вы также хотите превратить каждый символ выше U+007F в числовую сущность &#NNN;.
- Нажмите кнопку копирования у поля вывода, чтобы скопировать закодированный или раскодированный результат.
- Нажмите «Поменять местами», чтобы переместить вывод во ввод и сменить режим для проверки в обе стороны, или «Очистить», чтобы сбросить ввод.
Примеры
Кодирование пяти зарезервированных символов
Ввод
<a href="x">Tom & Jerry's</a>
Вывод
<a href="x">Tom & Jerry's</a>
Декодирование смешанных именованных, десятичных и шестнадцатеричных сущностей
Ввод
100 % ☺ ©
Вывод
100 % ☺ ©
Кодирование всех не-ASCII в числовые сущности
Ввод
Café & 日本
Вывод
Café & 日本
Часто задаваемые вопросы
- Какие символы экранирует режим кодирования?
- По умолчанию он экранирует только пять символов, имеющих особое значение в HTML: & становится &, < становится <, > становится >, " становится ", а ' становится '. Амперсанд преобразуется первым, чтобы создаваемые им сущности не экранировались дважды. Включите «кодировать все не-ASCII» в Настройках, чтобы также превратить каждый символ выше U+007F в числовую сущность &#NNN;.
- Какие виды сущностей может разрешить режим декодирования?
- Все три формы: именованные ссылки вроде &, , © и —; десятичные числовые ссылки вроде ©; и шестнадцатеричные числовые ссылки вроде ©. Декодирование передаёт текст встроенному HTML-парсеру браузера, поэтому любая сущность, которую браузер распознаёт, разрешается так же, как на настоящей странице.
- Защищает ли кодирование от XSS?
- Экранирование &, <, >, " и ' — это основная защита при размещении недоверенного текста в содержимом тела HTML и в значениях атрибутов в двойных кавычках, а именно это и делает данный инструмент. Это не полноценный санитайзер для всех контекстов (например, атрибутов без кавычек, URL или встроенных скриптов), поэтому считайте его кодированием для стандартного вывода HTML, а не полной системой безопасности.
- Обрабатывает ли он эмодзи и символы за пределами базовой плоскости?
- Да. Кодирование проходит по тексту по кодовым точкам Unicode, поэтому суррогатные пары вроде эмодзи кодируются как одна правильная сущность &#NNN;, а не как две сломанные половины, а декодирование возвращает числовые сущности к исходным символам.
- Загружается ли мой текст на сервер?
- Нет. И кодирование, и декодирование выполняются целиком в вашем браузере — кодирование с помощью карты символов, а декодирование с помощью отдельной textarea, которая никогда не добавляется на страницу, поэтому никакие скрипты не выполняются. Ничего не загружается, не сохраняется и никуда не отправляется, что делает его безопасным для приватного кода, внутренних текстов и неопубликованного контента.
Похожие инструменты
Кодирование / декодирование Base32 / Base58
Кодируйте текст в Base32 (RFC 4648) или Base58 (алфавит Bitcoin) и декодируйте оба формата обратно в текст — полностью безопасно для UTF-8 и целиком в вашем браузере.
Кодирование / декодирование Base64
Кодируйте или декодируйте Base64 (безопасно для UTF-8): URL-безопасный алфавит, необязательное заполнение, перенос 64/76, счётчики байтов и символов и просмотр байтов в hex или двоичном виде.
Конвертер регистра и счётчик
Преобразуйте текст между UPPERCASE, camelCase, PascalCase, snake_case, CONSTANT_CASE, kebab-case, dot.case и другими форматами и считайте символы, слова и строки.
Форматер и минификатор кода
Мгновенно форматируйте или минифицируйте HTML, CSS и JavaScript прямо в браузере с отступом в 2 пробела, 4 пробела или табуляцию и сжатием JavaScript на основе Terser.