Caractères cachés dans le texte
Les caractères cachés sont des points de code Unicode invisibles mais bien présents dans le texte : espaces de largeur nulle, contrôles bidirectionnels, espaces inhabituelles et caractères de contrôle. Ils cassent la comparaison de chaînes, la recherche, les imports de données et, dans le code, peuvent faire diverger l’affichage de l’exécution.
Plus : éléments trouvés, vue rayons X et options
Vue rayons X
Votre texte avec chaque caractère caché exposé sous forme d’étiquette. Survolez pour voir son nom Unicode.
Ce qui a été trouvé
| Point de code | Caractère | Nombre | Action |
|---|
Les classes principales
- Largeur nulle (U+200B, U+200C, U+2060…) : sans largeur, ils coupent les mots de façon invisible pour la recherche et les regex.
- Contrôles bidirectionnels (U+202A–U+202E, U+2066–U+2069) : changent l’ordre d’affichage sans changer le texte stocké. La classe la plus risquée dans le code.
- Espaces inhabituelles (U+00A0, U+202F, U+3000…) : ressemblent à des espaces normales mais sont d’autres caractères, et cassent colonnes CSV et indentation.
- Caractères de contrôle (blocs C0/C1) : restes de données binaires ou de décodages erronés qui corrompent CSV, TSV et journaux.
D’où ils viennent
Ce sont presque jamais des marques délibérées. Ils apparaissent sur le chemin de copie : éditeurs CMS, exports PDF, traitements de texte, pages web bien composées et tableurs. Le texte d’IA les ramasse dans l’interface de chat, pas dans le modèle.
Comment les supprimer sans abîmer le texte
L’outil ci-dessus lit le texte point de code par point de code : il supprime l’invisible, remplace les espaces inhabituelles par des espaces normales (sans jamais les effacer, pour ne pas coller les mots) et préserve émojis, écritures persane, coréenne, khmère et braille. Vous voyez chaque caractère dans la vue rayons X avant nettoyage.
Questions fréquentes
L’absence de caractères cachés prouve-t-elle qu’un texte n’est pas d’IA ?
Non, et l’inverse est aussi faux. Les caractères cachés indiquent un parcours de copie, pas l’auteur dans un sens ou l’autre.
Pourquoi sont-ils dangereux dans le code ?
Un contrôle bidirectionnel peut faire sembler qu’un commentaire se termine là où il ne se termine pas, tandis que le compilateur voit autre chose que vous.