NormalizationForm Enum
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Definierar vilken typ av normalisering som ska utföras.
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
- Arv
- Attribut
Fält
| Name | Värde | Description |
|---|---|---|
| FormC | 1 | Anger att en Unicode-sträng normaliseras med fullständig kanonisk nedbrytning, följt av ersättning av sekvenser med deras primära kompositer, om möjligt. |
| FormD | 2 | Anger att en Unicode-sträng normaliseras med fullständig kanonisk nedbrytning. |
| FormKC | 5 | Anger att en Unicode-sträng normaliseras med fullständig kompatibilitetsfördelning, följt av ersättning av sekvenser med deras primära kompositer, om möjligt. |
| FormKD | 6 | Anger att en Unicode-sträng normaliseras med fullständig kompatibilitetsfördelning. |
Kommentarer
Vissa Unicode-sekvenser anses vara likvärdiga eftersom de representerar samma tecken. Följande anses till exempel vara likvärdiga eftersom något av dessa kan användas för att representera "ắ":
"\u1EAF" (U+1EAF LATINSK LITEN BOKSTAV A MED BREVE OCH AKUT)
"\u0103\u0301" (U+0103 LATINSK LITEN BOKSTAV A MED BREVE + U+0301 KOMBINERA AKUT ACCENT)
"\u0061\u0306\u0301" (U+0061 LATINSK LITEN BOKSTAV A + U+0306 KOMBINERA BREVE + U+0301 KOMBINERA AKUT ACCENT)
Men ordningstal, dvs binär, jämförelser anser att dessa sekvenser skiljer sig eftersom de innehåller olika Unicode-kodvärden. Innan du utför ordningsjämförelser måste program normalisera dessa strängar för att dela upp dem i sina grundläggande komponenter.
Varje sammansatt Unicode-tecken mappas till en mer grundläggande sekvens med ett eller flera tecken. Nedbrytningsprocessen ersätter sammansatta tecken i en sträng med deras mer grundläggande mappningar. En fullständig nedbrytning utför rekursivt den här ersättningen tills inget av tecknen i strängen kan delas upp ytterligare.
Unicode definierar två typer av nedbrytningar: nedbrytning av kompatibilitet och kanonisk nedbrytning. Vid kompatibilitetsdelning kan formateringsinformation gå förlorad. I kanonisk nedbrytning, som är en delmängd av kompatibilitetsfördelning, bevaras formateringsinformation.
Två uppsättningar tecken anses ha kanonisk likvärdighet om deras fullständiga kanoniska nedbrytningar är identiska. På samma sätt anses två uppsättningar tecken ha kompatibilitetsjämförelse om deras fullständiga kompatibilitetsfördelningar är identiska.
Mer information om normalisering, nedbrytning och likvärdighet finns i Unicode Standard Annex #15: Unicode Normalization Forms at unicode.org.