0

Resultado da Decodificação

Escape Unicode

Resultado da Codificação

Escape Unicode
Formato
A-F

Sobre Sequências de Escape Unicode

Converte strings para o formato de sequência de escape Unicode.

Sequências de escape Unicode convertem um único caractere em um formato de ponto de código hexadecimal de 4 dígitos como \uXXXX. Por exemplo, "あ" torna-se "\u3042".

O DenCode suporta os seguintes formatos de notação além do formato \uXXXX.

FormatoResultado da conversão de "ABC"Descrição / Linguagem de Programação
\uXXXX\u0041\u0042\u0043Sequência de escape Unicode comum
\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%u0043Codificação percentual (Não padrão)
U+XXXXU+0041 U+0042 U+0043Notação padrão Unicode de ponto de código (separado por espaço)
0xX0x41 0x42 0x43Notação hexadecimal de ponto de código (separado por espaço)

Alguns dos formatos acima são mencionados na RFC 5137 (ASCII Escaping of Unicode Characters) como MELHORES PRÁTICAS ATUAIS, mas não há padrão internacional.

O formato %uXXXX é suportado pelo Microsoft IIS, mas é um formato não padrão. System.Web.HttpUtility.UrlEncodeUnicode do C# pode codificar para o formato %u, mas este método está obsoleto desde o .NET Framework 4.5.

Observe que para o formato \X, como uma especificação CSS, um único espaço de meia largura subsequente é tratado como um delimitador e ignorado durante a decodificação. Nos formatos U+XXXX e 0xX, cada caractere é separado por um espaço de meia largura durante a codificação, e um único espaço de meia largura subsequente é ignorado durante a decodificação, assim como no formato \X.

Escape por nome Unicode

Como uma sequência de escape Unicode, o escape por nome Unicode também é suportado.

FormatoResultado da conversão de "A"Descrição / Linguagem de Programação
\N{name}\N{LATIN CAPITAL LETTER A}C++23, Python, Perl

Nomes Unicode podem ser verificados em Names List Charts - Unicode ou NamesList.txt - Unicode.

Caracteres fora do intervalo BMP Unicode em sequências de escape Unicode

Para caracteres Unicode não-BMP, como o ponto de código não cabe em 4 dígitos, eles são representados na seguinte notação para cada linguagem de programação.

Por exemplo, o resultado da conversão de "😀" (U+1F600) é o seguinte:

FormatoResultado da conversão de "😀"(U+1F600)Linguagem de Programação
\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

Nos formatos \uXXXX e %uXXXX, caracteres não-BMP são representados por dois códigos de unidade como pares substitutos UTF-16. Em outros formatos, um caractere é representado por um ponto de código.