fixmint
IT

Caratteri nascosti nel testo: dove si annidano e come rimuoverli

Di · · aggiornato il 8 novembre 2026 · 4 min di lettura

I caratteri nascosti sono punti di codice Unicode invisibili, come gli spazi di larghezza zero, gli spazi unificatori e i segni di direzione. Sembrano uno spazio normale oppure non si vedono affatto, quindi il testo appare corretto, ma la ricerca, il codice e la convalida dei moduli lo trattano come un testo diverso. Li individui esaminando i punti di codice e li rimuovi eliminando o sostituendo proprio quei caratteri.

Rimuovi caratteri nascostiCaratteri invisibili nel mio testoUsalo gratis

Da dove arrivano

La maggior parte dei caratteri nascosti arriva copiando, non scrivendo:

  • Pagine web. I siti usano gli spazi unificatori (U+00A0) per impedire che due parole vadano a capo separatamente, e gli spazi di larghezza zero (U+200B) per indicare dove una parola lunga può essere spezzata. Copiando un brano, se li porti dietro.
  • Elaboratori di testi. I trattini di sillabazione (U+00AD) vengono inseriti per la sillabazione. Sono invisibili, a meno che una riga non vada a capo proprio lì. Alcuni editor inseriscono anche automaticamente spazi unificatori in certi punti.
  • App di messaggistica ed email. I messaggi copiati da una chat o da un client di posta possono contenere unificatori di larghezza zero e segni di direzione, soprattutto quando il testo mescola più lingue.
  • Testo con direzioni miste. L'arabo, l'ebraico e i testi misti usano segni di direzione come il segno da sinistra a destra (U+200E), il segno da destra a sinistra (U+200F) e i caratteri di incorporamento e sovrascrittura (da U+202A a U+202E). Controllano come viene visualizzata la riga, non ciò che dice.
  • Byte order mark. Un byte order mark (BOM, U+FEFF) all'inizio di un file è una firma che alcuni editor scrivono. È invisibile, ma diventa un vero primo carattere quando il file viene letto come testo semplice.
  • Finestre di chat con l'IA. Anche il testo copiato da alcune interfacce di chat con l'intelligenza artificiale può contenere questi caratteri. La causa più probabile è il modo in cui il testo è stato mostrato e copiato, quindi non interpretarli come un segno di intenzione.

Perché causano problemi

Ogni carattere nascosto è un vero punto di codice, quindi modifica il testo anche quando la pagina sembra identica:

  • La ricerca non trova. Uno spazio di larghezza zero dentro una parola interrompe la corrispondenza, quindi cercando la parola non si ottiene nessun risultato.
  • Il codice si rompe. Uno spazio unificatore in un file sorgente è un errore di sintassi in molti linguaggi, e spesso l'errore segnala una riga che sembra perfetta. La guida sulle virgolette curve tratta l'altro problema comune dei testi incollati nel codice.
  • La convalida dei moduli respinge l'input. Un indirizzo email con uno spazio di larghezza zero dopo la @ sembra valido, ma non supera il controllo.
  • I conteggi cambiano. A seconda dello strumento, il conteggio dei caratteri include o esclude questi caratteri, quindi lo stesso testo può dare due totali diversi. Conta il testo prima e dopo la pulizia con il contatore di parole per vedere la differenza.

Ecco un piccolo esempio. La parola "fattura" ha otto lettere. Con uno spazio di larghezza zero al suo interno, la stessa parola è lunga nove punti di codice, ma sullo schermo appare esattamente uguale. Cercando "fattura" non troverai la seconda versione.

Come vederli

Guardare il testo non serve, quindi usa uno di questi metodi:

  1. Incolla il testo in uno strumento che elenca i punti di codice, come rimuovi caratteri nascosti, che segnala cosa trova prima di modificare qualsiasi cosa.
  2. In un editor di codice, attiva l'impostazione che mostra gli spazi o i caratteri speciali. Gli spazi unificatori appaiono così con un segno diverso dagli spazi normali.
  3. In un linguaggio di programmazione, stampa i punti di codice di una stringa sospetta. In Python, ad esempio, [hex(ord(c)) for c in text] elenca ciascuno di essi, quindi uno spazio unificatore compare come 0xa0 e uno spazio di larghezza zero come 0x200b.

Come rimuoverli

La rimozione deve essere mirata. Eliminare ogni carattere non ASCII cancellerebbe anche accenti, virgolette e lettere di altre lingue. Procedi così:

  • Sostituisci gli spazi unificatori con spazi normali, perché quasi sempre sono spazi veri e propri.
  • Elimina gli spazi di larghezza zero, i trattini di sillabazione, i byte order mark e i segni di direzione sparsi.
  • Conserva le lettere accentate, le virgolette curve e la punteggiatura vera.

Correggi testo incollato è pensato per i testi provenienti da altrove, quindi usalo quando la copia presenta anche interruzioni di riga rotte o spaziature strane.

Come farlo con fixmint

  1. Incolla il testo in Il tuo testo.
  2. Leggi l'elenco di ciò che è stato trovato. Ogni carattere è indicato per nome, come ZWSP per uno spazio di larghezza zero, e accompagnato da ciò che succederà.
  3. Lascia spuntata l'opzione Mantieni i joiner dentro le emoji, così le sequenze di emoji restano visualizzate come un unico simbolo.
  4. Spunta Converti anche le virgolette curve, i trattini lunghi e medi e … in ASCII semplice solo per codice o dati, poi usa Copia oppure Scarica .txt.

Casi particolari

  • Le sequenze di emoji usano gli unificatori di larghezza zero di proposito. Rimuoverli spezza un'emoji in più simboli.
  • Lo spazio unificatore è corretto in alcune tipografie, ad esempio tra un numero e la sua unità di misura, e in alcuni segni di punteggiatura francesi. Sostituiscilo solo dove sai che è un errore.
  • Una volta pulito il testo, confrontalo con l'originale per vedere esattamente cosa è cambiato.

Risposte rapide

I caratteri nascosti sono un segno che il testo è stato scritto da un'IA?

No. Arrivano da pagine web, elaboratori di testi, app di messaggistica e dalla copia e incolla in generale. La loro presenza non dice chi o che cosa ha scritto il testo.

Eliminando tutti i caratteri non ASCII il problema si risolve?

No. Così cancelleresti anche accenti, virgolette e lettere di altre lingue. Rimuovi invece i punti di codice invisibili specifici.

Come capisco se una stringa contiene caratteri nascosti?

Confronta la sua lunghezza con il numero di caratteri che vedi, oppure incollala in uno strumento che elenca i punti di codice. Se i conteggi non coincidono, dentro c'è qualcosa di invisibile.

Tradotto dal Originale in inglese con l'assistenza dell'IA.

Commenti

    Nessun commento per ora. Sii il primo.

    La tua valutazione (facoltativa)

    La tua email non viene mai mostrata né conservata.

    Copertina di How to Remain Valuable When Intelligence Becomes CheapHow to Remain Valuable When Intelligence Becomes Cheap

    224 pagine sui vantaggi umani, economici e strategici che restano rari quando l'intelligenza artificiale può svolgere gran parte del lavoro cognitivo.

    $3.84Acquistalo su GumroadIn inglese