Utilia

Rimuovi caratteri invisibili

Trova e rimuovi i caratteri invisibili online. Rileva spazi a larghezza zero, spazi indivisibili, trattini facoltativi e controlli bidi (Trojan Source).

Caratteri da rimuovere

Come rimuovere i caratteri invisibili

  1. Incolla il testo nel riquadro di input. Viene analizzato appena lo incolli.
  2. Leggi il risultato: una tabella elenca ogni carattere nascosto trovato, con code point, sigla, nome Unicode, tipo e numero di occorrenze. L’Input evidenziato mostra dove si trova ciascuno, come un piccolo badge colorato tipo ZWSP o NBSP.
  3. In Caratteri da rimuovere, lascia spuntati i tipi che vuoi eliminare. Seleziona tutto / niente li attiva o disattiva tutti insieme.
  4. Lascia spuntato Sostituisci gli spazi indivisibili e speciali con uno spazio normale, così “10 000” mantiene il suo spazio invece di diventare “10000”.
  5. Copia il testo ripulito dal riquadro del risultato. Rimuovi i caratteri invisibili aggiorna il risultato.

Cosa rileva lo strumento

Tipo Caratteri Da dove arrivano
Caratteri a larghezza zero ZWSP U+200B, ZWNJ U+200C, ZWJ U+200D, WJ U+2060, BOM U+FEFF Pagine web, programmi di videoscrittura, testo copiato da PDF o app di chat, file salvati con byte order mark
Spazi indivisibili e speciali NBSP U+00A0, NBSP stretto U+202F, spazi fine, em, en, figura e ideografico, separatori di riga e di paragrafo   in HTML, tipografia francese, Word, Opzione+Spazio su macOS
Trattini facoltativi SHY U+00AD Suggerimenti di sillabazione di editor di testo e siti web
Controlli bidirezionali LRM, RLM, ALM, LRE–RLO (U+202A–U+202E), LRI–PDI (U+2066–U+2069) Testi misti in arabo, ebraico e caratteri latini, e codice malevolo
Caratteri di controllo NUL, ESC, avanzamento pagina, DEL, controlli C1 Output del terminale, file vecchi, codifiche rovinate
Altri caratteri di formato Caratteri tag, operatori matematici invisibili, riempitivi hangul, braille vuoto, qualsiasi altro carattere Unicode “Cf” Filigrane nascoste, nomi utente “vuoti”, fonti oscure
Selettori di variante VS1–VS256 Stili delle emoji, varianti CJK e un trucco di steganografia che nasconde dati dopo un’emoji

Tabulazioni, avanzamenti di riga e ritorni a capo sono caratteri normali e non vengono mai toccati. I selettori di variante non sono selezionati di default perché di solito sono legittimi.

Perché i caratteri invisibili creano problemi

Non si vedono, ma i computer sì. Uno spazio a larghezza zero dentro una parola manda in tilt la ricerca e il controllo ortografico, un byte order mark all’inizio di un file CSV rovina il nome della prima colonna, uno spazio indivisibile fa risultare diversi due valori in un CERCA.VERT o in un campo password, e un trattino facoltativo può spezzare un URL. Il codice che contiene un U+FEFF o un U+00A0 di troppo può rifiutarsi di compilare con un errore incomprensibile.

I caratteri invisibili possono anche essere voluti: alcuni servono a contrassegnare il testo copiato, così che una fuga di notizie possa essere ricondotta alla fonte.

Trojan Source e controlli bidirezionali

I controlli bidirezionali dicono al motore di visualizzazione di disporre parte di una riga da destra a sinistra. Dentro il codice sorgente possono far sembrare il codice diverso da quello che il compilatore esegue davvero: un attacco pubblicato nel 2021 con il nome “Trojan Source” (CVE-2021-42574). Quando lo strumento ne trova uno, mostra un avviso. Un testo legittimo in arabo o ebraico può usare i segni LRM e RLM, ma controlli di incorporamento, override e isolamento in un file di codice o di configurazione sono un campanello d’allarme.

Conserva ciò che ti serve

  • Mantieni i joiner e i selettori dentro le emoji (👨‍👩‍👧, ❤️) protegge i joiner a larghezza zero e i selettori di variante che compongono emoji come 👨‍👩‍👧 o ❤️. Togli la spunta per rimuovere anche quelli: l’emoji della famiglia diventa allora tre persone separate.
  • Il persiano, l’hindi e altre scritture usano ZWNJ e ZWJ per controllare come si uniscono le lettere. Per testi del genere, togli la spunta da Caratteri a larghezza zero (ZWSP, ZWNJ, ZWJ, WJ, BOM).
  • La tipografia francese usa spazi indivisibili stretti prima di ; : ! ? e dentro le virgolette « ». Togli la spunta dal tipo degli spazi per conservarli.

Domande frequenti

Come faccio a sapere se il mio testo contiene spazi a larghezza zero?

Incollalo qui. Se la tabella resta vuota e lo stato dice “Nessun carattere invisibile trovato.”, non ce ne sono.

Rimuovere gli spazi indivisibili attaccherà le parole tra loro?

Non con l’impostazione predefinita: gli spazi indivisibili e speciali vengono sostituiti con uno spazio normale. Togli la spunta dall’opzione di sostituzione solo se vuoi eliminarli del tutto.

Lo strumento rimuove spazi normali, tabulazioni o a capo?

No. Vengono toccati solo i tipi di carattere elencati sopra.

Posso incollare un testo riservato?

Sì. L’analisi e la pulizia avvengono nel tuo browser; nulla viene caricato o salvato.

Perché il mio file ripulito mostra ancora un carattere strano all'inizio?

Se il file è stato salvato con una codifica diversa da UTF-8, il problema potrebbe essere la codifica e non un carattere invisibile. Salva di nuovo il file in UTF-8 e analizzalo ancora.