NormalizationForm Enumeração
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Define o tipo de normalização a executar.
public enum class NormalizationForm
public enum NormalizationForm
[System.Runtime.InteropServices.ComVisible(true)]
public enum NormalizationForm
type NormalizationForm =
[<System.Runtime.InteropServices.ComVisible(true)>]
type NormalizationForm =
Public Enum NormalizationForm
- Herança
- Atributos
Campos
Nome | Valor | Description |
---|---|---|
FormC | 1 | Indica que uma cadeia de caracteres Unicode é normalizada usando a decomposição canônica completa, seguida da substituição de sequências por seus compostos primários, se possível. |
FormD | 2 | Indica que uma cadeia de caracteres Unicode é normalizada usando a decomposição canônica completa. |
FormKC | 5 | Indica que uma cadeia de caracteres Unicode é normalizada usando a decomposição de compatibilidade completa, seguida da substituição de sequências por seus compostos primários, se possível. |
FormKD | 6 | Indica que uma cadeia de caracteres Unicode é normalizada usando a decomposição de compatibilidade completa. |
Comentários
Algumas sequências Unicode são consideradas equivalentes porque representam o mesmo caractere. Por exemplo, os seguintes são considerados equivalentes porque qualquer um deles pode ser usado para representar "ắ":
"\u1EAF" (U+1EAF LETRA LATINA PEQUENA A COM BREVE E AGUDA)
"\u0103\u0301" (U+0103 LETRA PEQUENA LATINA A COM BREVE + U+0301 COMBINANDO ÊNFASE AGUDA)
"\u0061\u0306\u0301" (U+0061 LETRA PEQUENA LATINA A + U+0306 COMBINANDO BREVE + U+0301 COMBINANDO ÊNFASE AGUDA)
No entanto, ordinal, ou seja, binárias, as comparações consideram essas sequências diferentes porque contêm valores de código Unicode diferentes. Antes de executar comparações ordinais, os aplicativos devem normalizar essas cadeias de caracteres para decompor-as em seus componentes básicos.
Cada caractere Unicode composto é mapeado para uma sequência mais básica de um ou mais caracteres. O processo de decomposição substitui caracteres compostos em uma cadeia de caracteres por seus mapeamentos mais básicos. Uma decomposição completa executa essa substituição recursivamente até que nenhum dos caracteres na cadeia de caracteres possa ser decomposto ainda mais.
Unicode define dois tipos de decomposições: decomposição de compatibilidade e decomposição canônica. Em decomposição de compatibilidade, as informações de formatação podem ser perdidas. Na decomposição canônica, que é um subconjunto de decomposição de compatibilidade, as informações de formatação são preservadas.
Dois conjuntos de caracteres são considerados com equivalência canônica se suas decomposições canônicas completas forem idênticas. Da mesma forma, dois conjuntos de caracteres são considerados com equivalência de compatibilidade se suas decomposições de compatibilidade completa forem idênticas.
Para obter mais informações sobre normalização, decomposições e equivalência, consulte Anexo Padrão Unicode nº 15: Unicode Normalization Forms em unicode.org.