0

Décodé

Échappement Unicode

Encodé

Échappement Unicode
Format
A-F

À propos des séquences d'échappement Unicode

Convertit une chaîne au format de séquence d'échappement Unicode.

Les séquences d'échappement Unicode convertissent un caractère en un point de code hexadécimal à 4 chiffres, tel que \uXXXX. Par exemple, "あ" devient "\u3042".

DenCode prend également en charge les formats de notation suivants en plus du format \uXXXX.

FormatRésultat de la conversion de "ABC"Description / Langage de programmation
\uXXXX\u0041\u0042\u0043Séquence d'échappement Unicode générale
\u{X}\u{41}\u{42}\u{43}Lua
\x{X}\x{41}\x{42}\x{43}Perl
\X\41\42\43CSS
&#xX;ABCHTML, XML
%uXXXX%u0041%u0042%u0043Encodage en pourcentage (non standard)
U+XXXXU+0041 U+0042 U+0043Notation standard Unicode du point de code (séparé par des espaces)
0xX0x41 0x42 0x43Notation hexadécimale du point de code (séparée par des espaces)

Certains des formats ci-dessus sont mentionnés comme BEST CURRENT PRACTICE dans la RFC 5137 (ASCII Escaping of Unicode Characters), mais il n'y a pas de norme internationale.

Le format %uXXXX est pris en charge par Microsoft IIS, mais c'est un format non standard. C# permet d'encoder au format %u avec System.Web.HttpUtility.UrlEncodeUnicode, mais cette méthode est obsolète depuis .NET Framework 4.5.

Notez que pour le format \X, selon la spécification CSS, un espace demi-chasse suivant lors du décodage est traité comme un délimiteur et ignoré. Pour les formats U+XXXX et 0xX, chaque caractère est séparé par un espace demi-chasse lors de l'encodage, et lors du décodage, un espace demi-chasse consécutif suivant est ignoré, tout comme pour le format \X.

Échappement par nom Unicode

L'échappement par nom Unicode est également pris en charge comme séquence d'échappement Unicode.

FormatRésultat de la conversion de "A"Description / Langage de programmation
\N{name}\N{LATIN CAPITAL LETTER A}C++23, Python, Perl

Les noms Unicode peuvent être vérifiés sur Names List Charts - Unicode ou NamesList.txt - Unicode.

Caractères hors de la plage BMP Unicode dans les séquences d'échappement Unicode

Pour les caractères non-BMP Unicode, le point de code ne tient pas sur 4 chiffres, ils sont donc représentés dans les formats suivants selon le langage de programmation.

Par exemple, le résultat de la conversion de "😀" (U+1F600) est le suivant.

FormatRésultat de la conversion de "😀" (U+1F600)Langage de programmation
\uXXXX\uD83D\uDE00Java, Kotlin, Scala
\u{X}\u{1F600}C++23, Rust, Swift, JavaScript, PHP, Ruby, Dart, Lua
\U00XXXXXX\U0001F600C, C++, Objective-C, C#, Go, Python, R
\x{X}\x{1F600}Perl
\X\1F600CSS
&#xX;😀HTML, XML
%uXXXX%uD83D%uDE00-
U+XXXXU+1F600-
0xX0x1F600-
\N{name}\N{GRINNING FACE}C++23, Python, Perl

Dans les formats \uXXXX et %uXXXX, les caractères non-BMP sont représentés par deux unités de code en tant que paire de substitution UTF-16 (surrogate pair). Dans les autres formats, un caractère est représenté par un seul point de code.