Représentez le texte sous forme d’échappements \uXXXX ou de références HTML décimales et hexadécimales. Le décodage reconnaît ces trois notations, même mélangées au sein du texte, sans dépendre du format sélectionné. Il ne s’agit pas d’une conversion d’octets UTF-8.
Fonctionne localement dans votre navigateurCollez directement le contenu dans le champ. La conversion s’effectue dans le navigateur sans transmettre la saisie dans des requêtes réseau. L’import de fichiers et le traitement par lots ne sont pas proposés.
Le mode Unicode écrit chaque unité de code UTF-16 sous la forme \u suivie d’exactement quatre chiffres hexadécimaux, avec les lettres en minuscules et sans guillemets extérieurs. A donne \u0041, Ā donne \u0100 et un véritable saut LF donne \u000a. 😀 nécessite la paire \ud83d\ude00.
Les références numériques utilisent les points de code complets : A你😀 donne A你😀 ou A你😀. Les références hexadécimales ont une longueur variable et des lettres hexadécimales majuscules. Les lettres ordinaires et les espaces sont également encodés.
Les formes reconnues sont \u avec un u minuscule et quatre chiffres hexadécimaux, ainsi que les références numériques terminées par un point-virgule. Les références hexadécimales acceptent &#x ou &#X et les chiffres dans les deux casses. Ainsi, \u0041你😀 devient A你😀.
\u005cu0041 devient le texte littéral \u0041 ; A devient A, pas A. Les séquences produites ne sont pas réexaminées. Ce n’est pas une analyse complète de JavaScript ou de JSON. Aucun code n’est exécuté et la sortie est affichée en texte, pas rendue comme du HTML.
he 1.2.0 applique des contrôles HTML stricts à la création des références numériques et à leur décodage. Ces contrôles ne s’appliquent pas aux échappements Unicode : NUL, U+0080 et U+FFFF peuvent être encodés dans ce mode et décodés par \u, alors que l’encodage numérique les refuse. Aucun mode d’encodage n’accepte de substitut isolé ; le résultat décodé ne doit pas en contenir non plus.
\uD83D\uDE00 donne 😀, mais les références de substituts �� sont refusées, tout comme �, € et �.
Les formes non reconnues restent littérales : \uZZZZ, \u{41}, \U0041, \n, &, &#xZZ; ou A sans point-virgule. Une liste comme 65 66 n’est pas interprétée. En revanche, une référence numérique reconnue peut provoquer une erreur de validation stricte.
Les espaces aux extrémités ne sont pas supprimés et aucune normalisation Unicode n’est appliquée. Une saisie vide produit une sortie vide. Le champ de texte convertit toutefois les véritables fins de ligne CRLF et CR en LF. Le cœur de conversion peut encoder CR en , mais le décodage numérique strict refuse . L’aller-retour exact n’est donc pas garanti pour toute entrée.