Към основното съдържание
LibraTool logoLibraTool

HTML кодиране и декодиране — безплатно

Кодирайте специални символи в HTML обекти или декодирайте обекти обратно в обикновен текст. Мигновено, в браузъра ви.

Работи офлайн след зареждане
Изход:
Примери:
Обикновен текст / HTML
Кодиран HTML
Изходът ще се появи тук...
Справка за стандартни HTML обекти
&&
<&lt;
>&gt;
"&quot;
'&#39;
·&nbsp;
©&copy;
®&reg;
™&trade;
€&euro;
—&mdash;
…&hellip;

Често срещани употреби

  • Кодирайте съдържание за RSS каналиКодирайте HTML съдържание за описания на елементи на RSS канали — необходимо по стандарт RSS 2.0.
  • Дезинфекцирайте потребителски входни данни за HTML изходКодирайте низове, предоставени от потребител, преди да ги вмъкнете в HTML — предотвратяване на XSS атаки на инжекция.
  • Кодирайте специални символи за HTML имейлКодирайте знаци като &, <, >, и © като HTML субекти, така че те да се показват правилно във всички имейл клиенти.
  • Кодирайте съдържание на потребителя за показване в мрежатаПредотвратете XSS атаки чрез кодиране на съдържание, генерирано от потребителя, преди да се показва на HTML страници.
  • Кодирайте съдържание за XMLКодирайте специални символи за XML файлове, RSS канали, карти на сайтове и SOAP полезни товари.

Как работи

Кодирането и декодирането на HTML тук се извършва изцяло във вашия браузър чрез ръчно написана замяна с регулярен израз и твърдо кодирана справочна таблица с именувани обекти — без библиотека за кодиране на трета страна, без обръщение към сървъра. За декодиране на редки именувани обекти (като &aacute; или &ldquo;) инструментът делегира на собствения HTML анализатор на браузъра като резервен вариант без разходи.

  1. 1
    Регулярен израз сканира за символи за замяна
    При кодиране един от два съобразени с Unicode регулярни израза се изпълнява върху входа ви: целенасочен шаблон, обхващащ около 25 обичайни значими за HTML и специални символа, или по-широк шаблон, който улавя всяка кодова точка над U+007F. Всяко съвпадение се прихваща символ по символ.
  2. 2
    Справочна таблица или codePointAt() произвежда обекта
    За изход с именувани обекти намерените символи се търсят в твърдо кодирана таблица (напр. & → &amp;, © → &copy;). За десетичен или шестнадесетичен изход String.codePointAt() получава Unicode кодовата точка и я форматира като &#NNN; или &#xNNN; — сурогатни двойки се обработват правилно, защото регулярният израз използва флага 'u' на Unicode.
  3. 3
    Единичен проход с регулярен израз декодира обекти обратно в символи
    При декодиране единичен проход с регулярен израз идентифицира всички токени на обекти (&amp;, &#65;, &#x41; и т.н.) и насочва всеки към правилния обработчик: hex parseInt(база 16), десетично Number(), обратно търсене по име, или — за всеки обект, който не е в твърдо кодираната таблица — елемент textarea, чиито innerHTML браузърът анализира нативно, връщайки правилния символ от вградената таблица с обекти на браузъра.
  4. 4
    Резултатът се появява мигновено; копиране в клипборда чрез Clipboard API
    Изходът се преизчислява синхронно при всяко натискане на клавиш чрез React useMemo. Копирането използва navigator.clipboard.writeText() — модерния асинхронен Clipboard API — с тихо улавяне на грешки за ограничени контексти.

Свързани инструменти

Често задавани въпроси