Utilia

Eliminador de caràcters invisibles

Detecta i elimina caràcters invisibles d'un text: espais d'amplada zero, espais indivisibles, guionets suaus, BOM i controls bidireccionals.

Caràcters per eliminar

Com eliminar caràcters invisibles

  1. Enganxa el text al quadre d’entrada. S’analitza tan bon punt l’enganxes.
  2. Llegeix el resultat: una taula llista cada caràcter amagat trobat, amb el seu punt de codi, nom curt, nom Unicode, tipus i quantitat. L’Entrada ressaltada mostra on és cadascun, com una petita insígnia de color com ZWSP o NBSP.
  3. A Caràcters per eliminar, deixa marcats els tipus que vols esborrar. Selecciona tots / cap els commuta tots alhora.
  4. Deixa marcada l’opció Substitueix els espais indivisibles i especials per un espai normal perquè «10 000» conservi l’espai en lloc de quedar «10000».
  5. Copia el text netejat del quadre de resultat. Elimina els caràcters invisibles actualitza el resultat.

Què detecta aquesta eina

Tipus Caràcters D’on provenen
Caràcters d’amplada zero ZWSP U+200B, ZWNJ U+200C, ZWJ U+200D, WJ U+2060, BOM U+FEFF Pàgines web, processadors de textos, text copiat de PDF o d’aplicacions de xat, fitxers desats amb una marca d’ordre de bytes
Espais indivisibles i especials NBSP U+00A0, NBSP estret U+202F, espais fins, em, en, de xifra i ideogràfics, separadors de línia i de paràgraf   d’HTML, tipografia francesa, Word, Opció+Espai a macOS
Guionets suaus SHY U+00AD Indicacions de partició de paraules de processadors de textos i llocs web
Controls bidireccionals LRM, RLM, ALM, LRE–RLO (U+202A–U+202E), LRI–PDI (U+2066–U+2069) Text mixt en àrab, hebreu i llatí, i codi maliciós
Caràcters de control NUL, ESC, salt de pàgina, DEL, controls C1 Sortida de terminal, fitxers antics, codificacions malmeses
Altres caràcters de format Caràcters d’etiqueta, operadors matemàtics invisibles, farcits de hangul, braille en blanc, qualsevol altre caràcter «Cf» d’Unicode Marques d’aigua amagades, noms d’usuari «en blanc», fonts poc comunes
Selectors de variació VS1–VS256 Estils d’emoji, variants CJK, i un truc d’esteganografia que amaga dades després d’un emoji

Les tabulacions, els salts de línia i els retorns de carro són caràcters normals i no es toquen mai. Els selectors de variació no es marquen per defecte perquè normalment són legítims.

Per què els caràcters invisibles donen problemes

No es veuen, però els ordinadors sí que els veuen. Un espai d’amplada zero dins d’una paraula trenca la cerca i el corrector ortogràfic, una marca d’ordre de bytes al principi d’un fitxer CSV fa malbé el nom de la primera columna, un espai indivisible fa que dos valors siguin diferents en una cerca d’un full de càlcul o en un camp de contrasenya, i un guionet suau pot partir una adreça web. El codi que conté un U+FEFF o un U+00A0 perdut pot negar-se a compilar amb un error desconcertant.

Els caràcters invisibles també poden ser deliberats: alguns s’usen per marcar el text copiat de manera que una filtració es pugui rastrejar fins a l’origen.

Trojan Source i els controls bidi

Els controls bidireccionals indiquen al motor de visualització que disposi part d’una línia de dreta a esquerra. Dins del codi font poden fer que el codi sembli diferent del que el compilador executa realment, un atac publicat el 2021 amb el nom de «Trojan Source» (CVE-2021-42574). Quan l’eina en troba un, mostra un avís. El text àrab o hebreu legítim pot fer servir les marques LRM i RLM, però els controls d’incrustació, de substitució i d’aïllament dins de codi o d’un fitxer de configuració són un senyal d’alerta.

Conserva el que necessites

  • Conserva els units i selectors dins dels emojis protegeix els units d’amplada zero i els selectors de variació que formen emojis com 👨‍👩‍👧 o ❤️. Desmarca-ho per eliminar-los també; l’emoji de família es converteix llavors en tres persones separades.
  • El persa, l’hindi i altres sistemes d’escriptura fan servir ZWNJ i ZWJ per controlar com s’uneixen les lletres. Per a aquests textos, desmarca Caràcters d’amplada zero (ZWSP, ZWNJ, ZWJ, WJ, BOM).
  • La tipografia francesa fa servir espais indivisibles estrets abans de « ; : ! ? » i dins de les cometes. Desmarca el tipus d’espais per conservar-los.
  • En català, la ela geminada s’escriu amb un punt volat (l·l), que és un caràcter visible normal i no s’elimina.

Preguntes freqüents

Com sé si el meu text conté espais d'amplada zero?

Enganxa’l aquí. Si la taula queda buida i l’estat diu «No s’ha trobat cap caràcter invisible.», no n’hi ha cap.

Eliminar els espais indivisibles unirà les meves paraules?

No amb la configuració per defecte: els espais indivisibles i especials se substitueixen per un espai normal. Desmarca l’opció de substituir només si vols que s’eliminin.

L'eina elimina els espais normals, les tabulacions o els salts de línia?

No. Només s’afecten els tipus de caràcters que s’indiquen més amunt.

És segur enganxar text confidencial?

Sí. L’anàlisi i la neteja s’executen al teu navegador; no es puja ni es desa res.

Per què el meu fitxer net encara mostra un caràcter estrany al principi?

Si el fitxer es va desar amb una codificació diferent d’UTF-8, el problema pot ser de codificació i no d’un caràcter invisible. Torna a desar el fitxer com a UTF-8 i analitza’l de nou.