Dekoder encji HTML

Zamień é i é z powrotem w czytelny tekst: odwołania nazwane i numeryczne, dziesiętne lub szesnastkowe, w swojej przeglądarce.

Działa w całości w twojej przeglądarce. Nic nie jest wysyłane, logowane ani przechowywane.

Tekst, który o jeden raz za dużo przeszedł przez kodowanie, przychodzi pełen é, é i &. To narzędzie odczytuje go z powrotem: każda encja staje się znakiem, który reprezentuje, a wszystko inne pozostaje bez zmian.

Jak to działa

Odwołania nazwane są wyszukiwane w tabeli HTML 4.01: 252 nazwy, od & do €. Odwołania numeryczne są odczytywane jako punkt kodowy, dziesiętnie (é) lub szesnastkowo (é), w obu przypadkach.

Wszystko, co nie jest odwołaniem, jest kopiowane bez zmian, łącznie z samotnym ampersandem. Tekst wyciągnięty ze strony bardzo często jest zakodowany tylko częściowo, a odrzucenie całego wejścia z powodu jednego zabłąkanego „&” nikomu by nie pomogło.

Przykłady

Przypadek Dane wejściowe Wynik
Encja nazwana café café
Ten sam znak zapisany punktem kodowym café and café café and café
Tekst zakodowany dwukrotnie, zdekodowany raz Tom & Jerry Tom & Jerry

Najczęściej zadawane pytania

Po dekodowaniu mój tekst wciąż zawiera &. Dlaczego?

Bo był zakodowany dwukrotnie. & dekoduje się do &, i to jest poprawne: jedno dekodowanie cofa jedno kodowanie. Przepuść go ponownie, żeby cofnąć drugie. To, że wynik wciąż jest zakodowany, jest zwykle ciekawym odkryciem: coś w łańcuchu przetwarzania koduje wyjście, które już było zakodowane.

Czy dekodowanie niezaufanego tekstu jest bezpieczne?

Dekodowanie tutaj jest bezpieczne: nic nie jest renderowane jako znaczniki, a wynik jest wyświetlany w zwykłym polu tekstowym. Niebezpieczne jest wstawienie zdekodowanego wyniku z powrotem na stronę: <script> dekoduje się do prawdziwego znacznika, i właśnie dlatego go zakodowano.

Dlaczego   nie jest w wyniku zwykłą spacją?

Bo nią nie jest. Dekoduje się do U+00A0, twardej spacji, która wygląda tak samo, a zachowuje się inaczej: nie pozwala na złamanie wiersza, a niemal cały kod wyszukujący i porównujący traktuje ją jako inny znak. Ta różnica jest często właśnie tropionym błędem.

Czy nazwy encji z HTML5 są obsługiwane?

Tylko 252 nazwy z HTML 4.01. HTML5 dodaje około dwóch tysięcy kolejnych, głównie matematycznych; te są pozostawiane bez zmian zamiast zgadywane. Odwołania numeryczne działają mimo to z każdym znakiem.

Warto wiedzieć

  • Wszystko dzieje się w przeglądarce. To, co wklejasz, nie jest wysyłane, rejestrowane ani przechowywane.

Źródła

Wszystkie narzędzia z kategorii Kod