Totes les guies

Per què un text mostra «&» i com corregir-ho

Publicat el · Actualitzat el 2 min de lectura

Quan un text mostra «&» en lloc de «&», una entitat HTML s’ha codificat una vegada de més. L’eina descodifica un nivell cada vegada i us diu quan en queda un.

Què és una entitat HTML

Una entitat és una seqüència de signes que representa un caràcter reservat al codi d’una pàgina. N’hi ha cinc de freqüents.

CaràcterEntitat
&&
<&lt;
>&gt;
"&quot;
' (apòstrof recte)&#039;

D’on ve la doble codificació

De vegades un text passa per dos sistemes que codifiquen cadascun: un editor i després una plantilla de pàgina. Cada pas transforma el «&» de l’entitat anterior. Amb Codificar i descodificar entitats HTML, codificar «Tom & Jerry» dona «Tom &amp; Jerry», i codificar aquest resultat dona «Tom &amp;amp; Jerry».

PasText resultant
Text originalTom & Jerry
Codificat una vegadaTom &amp; Jerry
Codificat dues vegadesTom &amp;amp; Jerry

El navegador descodifica un nivell en mostrar-lo. Un text codificat dues vegades es mostra, doncs, amb «&amp;» en lloc de «&».

Descodificar nivell per nivell

L’eina treu un sol nivell d’entitats a cada passada. Si el resultat encara conté entitats, el mode «Ambdós» ho assenyala i torneu a executar la descodificació sobre el resultat.

TextPrimera descodificacióSegona descodificació
Tom &amp;amp; JerryTom &amp; JerryTom & Jerry
&amp;lt;b&amp;gt;gras&amp;lt;/b&amp;gt;&lt;b&gt;gras&lt;/b&gt;<b>gras</b>

Descodificar un sol nivell evita desfer una codificació voluntària: un exemple de codi que ha de mostrar «&amp;» a la pantalla s’escriu «&amp;amp;» a la pàgina.

Accents i símbols

La descodificació entén totes les entitats amb nom que acaben amb punt i coma, no només les cinc habituals. «caf&eacute; &agrave; 5&nbsp;&euro; &copy; 2026» dona «café à 5 € © 2026», i l’espai dur esdevé un autèntic espai dur.

Entitats numèriques

Les entitats numèriques també es descodifiquen: «&#233;t&#xE9;» dona «été», i «&#x1F600;» com «&#128512;» donen el mateix emoji.

Què deixa intacte l’eina

  • Una entitat desconeguda com «&inconnue;» es manté tal qual.
  • Una entitat sense punt i coma final, com «&amp» o «&lt» dins d’una frase, no es toca.
  • Una adreça amb paràmetres, com «https://exemple.fr/?a=1&param=2&copy=4», continua exacta: «&param» i «&copy» no es prenen allà per entitats.

Codificar codi per mostrar-lo

Per mostrar un fragment de codi en una pàgina, codifiqueu-lo una vegada. El text «<a href="x">l’été & plus</a>» dona «&lt;a href=&quot;x&quot;&gt;l&#039;été &amp; plus&lt;/a&gt;». Les lletres accentuades no es codifiquen, només els cinc caràcters reservats.

Evitar el problema

Codifiqueu només una vegada, en l’últim moment, en escriure a la pàgina. Per substituir en bloc les restes d’una mala codificació, Cercar i reemplaçar va bé. Les adreces web segueixen una altra codificació, explicada a Base64, hash i adreça codificada, no els confongueu.

Comprovar el resultat

  1. Torneu a executar la descodificació mentre l’eina assenyali entitats restants.
  2. Compareu amb el text original a la pantalla.
  3. Comproveu els espais durs i els emojis.

Codificar i descodificar entitats HTML