Кодирование и декодирование HTML-сущностей
Tool guide
Text that has travelled through a CMS, a database dump or somebody else's API tends to arrive full of ", П and  . It is unreadable in that state and useless in a document. Paste the fragment here and the browser's own parser turns every escape back into the character it stood for: quotes become quotes, numeric codes become letters, a non-breaking space becomes a space. Nothing is sent anywhere while it works. See also: escape special characters into entities, strip the tags and keep plain text, turn finished markup into Markdown.
The text was escaped twice: the quote first became ", then the ampersand itself became &. One pass only strips the outer layer. Run the output through the decode button a second time and the string becomes readable. Fields that pass through both a template engine and an API often end up in this state.
Decoding turns   into a real non-breaking space. It looks identical to a normal space but wraps differently and will not be found by a plain space search. Copy the result out, then use a find-and-replace on the character U+00A0 in your editor if those spaces are getting in the way.
Yes. The browser does the parsing, so decimal references such as П, hexadecimal ones like П and every named entity from the HTML5 spec all resolve. Emoji written as a surrogate pair of numeric references are reassembled into a single character.
Short fragments and single fields are instant. A very long document pasted in one go makes the tab sluggish, because the entire text sits in a single textarea. Split large files into chunks of a few thousand lines, which also makes the output easier to check by eye.
This one removes HTML escaping — the named and numeric entities that start with an ampersand. Percent sequences such as %D0%9F come from URLs and are a different encoding entirely. If a string carries both, undo the percent encoding first and the HTML entities second.
It stays in the textarea of the open tab. The page script does the decoding, no request carrying your data is made in this flow, and no input history is kept. Reloading clears both fields, so copy the result before you refresh.
Before: <p>Acme "Vector" & partners</p>
After: Acme "Vector" & partners
Before: Hello
After: Hello
Your rating and feedback help decide what to improve next.