Codificador / Decodificador de Entidades HTML
Converta texto simples em entidades HTML (&, <, ©) ou decodifique as entidades de volta em caracteres legíveis. Cole sua sequência de texto, escolha codificar ou decodificar e copie o resultado.
Codificar ou Decodificar Entidades HTML
Fórmula de Entidades HTML
Onde:
- \(E(c)\) — a saída codificada para um único caractere de entrada \(c\)
- \(S\) — os cinco caracteres especiais do HTML:
&,<,>,"e' - \(n(c)\) — a entidade nomeada do caractere, por exemplo,
&torna-se& - \(r(c)\) — a referência numérica decimal:
&#seguido do ponto de código Unicode e de um ponto e vírgula, por exemplo,©torna-se© - \(\mathrm{cp}(c)\) — o ponto de código Unicode de \(c\); este ramo aplica-se apenas quando a conversão de não ASCII está ativada
A codificação substitui cada caractere especial do HTML pela sua entidade nomeada e, opcionalmente, cada caractere acima do ponto de código 127 por uma referência numérica. A decodificação é a operação inversa: referências nomeadas, decimais e hexadecimais são convertidas de volta nos caracteres que representam.
Entidades HTML – Exemplo de Cálculo
Exemplo: codificar o texto padrão Tom & Jerry said "5 < 10" — it's © WPCalc com a opção "Caracteres Não ASCII" definida como "Converter para entidades numéricas".
\[ \text{travessão: ponto de código } 8212 \;\to\; \text{referência numérica}, \qquad \text{símbolo de copyright: ponto de código } 169 \;\to\; \text{referência numérica} \]
Resultado: Tom & Jerry said "5 < 10" — it's © WPCalc
O Resumo de Entidades lista seis conversões distintas: & → &, " → " (duas vezes), < → <, ' → ', — → — e © → ©.
Como Usar a Calculadora de Entidades HTML
- Cole seu conteúdo na caixa Texto ou Sequência Codificada em HTML — texto simples para codificação ou texto contendo entidades como
&,<ou©para decodificação. - Defina a Operação como Codificar → entidades HTML ou Decodificar entidades → texto simples.
- Ao codificar, escolha como os Caracteres Não ASCII (apenas codificação) são tratados: Converter para entidades numéricas (© → ©) ou Deixar inalterados. Esta configuração é ignorada durante a decodificação.
- Leia o resultado em Saída Convertida e copie-o. O Resumo de Entidades lista cada conversão realizada com a contagem de cada uma; durante a decodificação, ele também sinaliza as entidades não reconhecidas que foram deixadas inalteradas.
O Que São Entidades HTML?
Uma entidade HTML é uma sequência de escape que representa um único caractere. Ela existe em três formas equivalentes: referências nomeadas como & e ©, referências numéricas decimais como © e referências hexadecimais como ©. As três versões do símbolo de copyright são renderizadas como exatamente o mesmo caractere no navegador, então você pode combiná-las livremente.
As entidades existem porque vários caracteres têm significado estrutural no HTML. Um "e" comercial inicia uma referência, e < e > delimitam as tags. Um < cru em seu texto pode ser interpretado como o início de uma tag e engolir silenciosamente as palavras seguintes, enquanto um & solto torna a marcação inválida. Substituir esses caracteres por entidades garante que sejam exibidos como texto literal.
Escapar também é uma medida básica de segurança. Sempre que a entrada fornecida pelo usuário é ecoada de volta em uma página — um comentário, um termo de busca, uma mensagem de erro —, deixar < sem escape permite que um invasor injete marcação ou scripts. Codificar os cinco caracteres especiais neutraliza os caminhos de injeção mais comuns. As referências numéricas têm um benefício adicional: permitem incorporar qualquer caractere Unicode, de travessões a emojis, em um arquivo que, de resto, é ASCII puro.
Ao decodificar, lembre-se de que torna-se um espaço não separável (U+00A0), que parece um espaço comum, mas se comporta de forma diferente na quebra de linhas e em buscas. O decodificador reconhece as referências nomeadas mais comuns do HTML5, além de todas as referências numéricas válidas; qualquer coisa que não reconheça é deixada intacta e relatada abaixo do resumo.
Referência de Entidades HTML Comuns
| Caractere | Nomeada | Decimal | Uso típico |
|---|---|---|---|
| & | & |
& |
Cadeias de consulta, valores de atributos |
| < | < |
< |
Exemplos de código, comparações matemáticas |
| > | > |
> |
Exemplos de código, fechamento de tags |
| " | " |
" |
Aspas duplas em atributos |
| ' | ' |
' |
Apóstrofos (forma segura para HTML4) |
| © | © |
© |
Avisos de direitos autorais |
| — | — |
— |
Travessão na pontuação |
| … | … |
… |
Reticências |
| ™ | ™ |
™ |
Símbolo de marca registrada |
| (espaço) | |
|
Espaço não separável |
| € | € |
€ |
Valores monetários |
| ° | ° |
° |
Temperaturas, ângulos |
Dicas e Limitações
- Evite a codificação dupla: executar o codificador em texto que já contém entidades transforma
&em&amp;. Decodifique primeiro e recodifique depois, se precisar de uma única passagem. - O apóstrofo é codificado como
'em vez de', exclusivo do HTML5, de modo que a saída permanece válida também em documentos HTML 4. - A codificação substitui apenas os cinco caracteres especiais do HTML e, opcionalmente, os não ASCII; letras latinas acentuadas só são alteradas quando a opção de referências numéricas está ativada.
- Entidades HTML não são codificação de URL. Sequências de porcentagem como
%26pertencem a URLs — use o Codificador de URL ou o Decodificador de URL para isso, não esta ferramenta. - Para consultar o ponto de código de um caractere individual antes de convertê-lo, o Conversor ASCII mostra o valor numérico diretamente.
- Se você precisa de uma representação segura para transporte de blocos inteiros de texto, em vez de um escape no nível de caracteres, o Codificador Base64 geralmente é a melhor escolha.
Perguntas frequentes
Como codificar entidades HTML manualmente, sem uma ferramenta?
Percorra seu texto procurando os cinco caracteres especiais e troque cada um: & → &, → >, " → ", ' → '. Para outros símbolos, localize o ponto de código Unicode do caractere e envolva-o como &#...; com um ponto e vírgula — por exemplo, © tem o ponto de código 169, então você escreve ©. A forma hexadecimal também funciona: © é renderizada de forma idêntica. Sempre codifique os "e" comerciais primeiro; se você substituir < primeiro e sobrar um &, o resultado ainda pode confundir o analisador.
Por que meu texto aparece literalmente como < em vez de um sinal de menor?
Seu texto foi codificado duas vezes: < foi transformado em < e, em seguida, o & dessa entidade foi codificado novamente, produzindo <. Corrija decodificando duas vezes — a primeira passagem gera <, a segunda gera <. Para evitar o problema, decodifique as entidades existentes antes de recodificar e nunca execute o codificador em uma sequência que já esteja escapada. O Resumo de Entidades ajudará você a identificar entradas & codificadas em dobro.
Qual é a diferença entre entidades HTML e codificação de URL (percent-encoding)?
Elas resolvem problemas diferentes. As entidades HTML (&, ©) escapam caracteres para que um navegador os exiba com segurança dentro de uma página web. As sequências de porcentagem (%26, %C2%A9) escapam caracteres para uso em URLs e cadeias de consulta, onde espaços, & e = têm significado especial. Se você colar %26 em uma página HTML, ele aparecerá literalmente como %26, não como um "e" comercial. Use esta ferramenta para marcação e um codificador de URL para links.
Quais caracteres devem sempre ser codificados para deixar o HTML seguro?
No mínimo, o "e" comercial e os sinais de menor e maior, porque & inicia uma referência de entidade e < inicia uma tag. Escapar aspas importa principalmente dentro de valores de atributos: " → " e ' → ' impedem que o valor de um atributo seja encerrado prematuramente. Ao exibir conteúdo enviado por usuários — comentários, termos de busca, valores de formulários —, a codificação desses caracteres bloqueia as técnicas mais comuns de injeção de HTML e scripts, pois qualquer tag que um invasor escreva é renderizada como texto visível e inofensivo.
Devo converter caracteres não ASCII como é, © ou — em entidades numéricas?
Depende da codificação de caracteres do seu arquivo. Se o documento estiver declarado como UTF-8 (charset=utf-8), você pode deixar letras acentuadas, travessões e símbolos como estão — os navegadores os tratam nativamente e o código-fonte permanece legível. Convertê-los em referências numéricas como © garante que o arquivo seja ASCII puro, o que ajuda quando a codificação é desconhecida, ao enviar HTML por e-mail ou ao colar em sistemas que corrompem Unicode. Emojis também funcionam bem como referências numéricas usando o ponto de código completo.
Por que se comporta de forma estranha depois que eu decodifico meu texto?
Porque decodifica para um espaço não separável (U+00A0), não para o espaço comum (U+0020). Visualmente eles parecem idênticos, mas a versão não separável impede a quebra de linha naquele ponto, pode comprometer comparações e buscas de cadeias de texto e pode atrapalhar códigos que removem espaços ou dividem o texto por espaços. Se o seu texto decodificado contiver diferenças invisíveis, tente substituir U+00A0 por espaços comuns — a maioria dos editores de texto pode procurar o caractere diretamente ou pela sua forma numérica.
Qual é a diferença entre ', ' e ' para um apóstrofo?
Todos os três representam o caractere de aspa simples. ' é a referência numérica decimal e ' é o equivalente hexadecimal — ambos são válidos em qualquer contexto. ' é uma referência nomeada introduzida apenas no HTML5; analisadores HTML 4 mais antigos não a reconhecem, e é por isso que muitos codificadores (incluindo este) geram a forma numérica para máxima compatibilidade. Na prática, qualquer navegador moderno renderiza os três de forma idêntica, então você pode decodificar e recodificar livremente sem perder o caractere.