UnicodeCategory 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 Unicode-kategorin för ett tecken.
public enum class UnicodeCategory
public enum UnicodeCategory
[System.Serializable]
public enum UnicodeCategory
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum UnicodeCategory
type UnicodeCategory =
[<System.Serializable>]
type UnicodeCategory =
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type UnicodeCategory =
Public Enum UnicodeCategory
- Arv
- Attribut
Fält
| Name | Värde | Description |
|---|---|---|
| UppercaseLetter | 0 | Versal bokstav. Signifierad av Unicode-beteckningen "Lu" (bokstav, versaler). Värdet är 0. |
| LowercaseLetter | 1 | Gemener. Signifierad av Unicode-beteckningen "Ll" (bokstav, gemener). Värdet är 1. |
| TitlecaseLetter | 2 | Rubrikbokstav. Signifierad av Unicode-beteckningen "Lt" (bokstav, rubrikcase). Värdet är 2. |
| ModifierLetter | 3 | Tecken på modifierarens bokstav, som är fristående avståndstecken som indikerar ändringar av en föregående bokstav. Signifierad av Unicode-beteckningen "Lm" (bokstav, modifierare). Värdet är 3. |
| OtherLetter | 4 | Bokstav som inte är en versal, en gemen bokstav, en rubrikbokstav eller en modifierarbokstav. Signifierad av Unicode-beteckningen "Lo" (bokstav, annan). Värdet är 4. |
| NonSpacingMark | 5 | Icke-avståndstecken som indikerar ändringar av ett bastecken. Signifierad av Unicode-beteckningen "Mn" (mark, nonspacing). Värdet är 5. |
| SpacingCombiningMark | 6 | Avståndstecken som indikerar ändringar av ett bastecken och påverkar bredden på glyfen för det bastecknet. Signifierad av Unicode-beteckningen "Mc" (markera, avståndsbläddring). Värdet är 6. |
| EnclosingMark | 7 | Omsluter markeringstecken, vilket är ett icke-avstånd som kombinerar tecken som omger alla tidigare tecken upp till och inklusive ett bastecken. Signifierad av Unicode-beteckningen "Me" (mark, enclosing). Värdet är 7. |
| DecimalDigitNumber | 8 | Decimaltecken, dvs. ett tecken som representerar ett heltal i intervallet 0 till och med 9. Signifierad av Unicode-beteckningen "Nd" (tal, decimaltal). Värdet är 8. |
| LetterNumber | 9 | Tal som representeras av en bokstav, i stället för en decimalsiffra, till exempel den romerska siffran för fem, som är "V". Indikatorn betecknas med Unicode-beteckningen "Nl" (nummer, bokstav). Värdet är 9. |
| OtherNumber | 10 | Tal som varken är en decimalsiffra eller ett bokstavsnummer, till exempel bråket 1/2. Indikatorn är signifierad av Unicode-beteckningen "Nej" (nummer, annat). Värdet är 10. |
| SpaceSeparator | 11 | Blankstegstecken, som inte har något tecken, men inte är ett kontroll- eller formattecken. Signifierad av Unicode-beteckningen "Zs" (avgränsare, blanksteg). Värdet är 11. |
| LineSeparator | 12 | Tecken som används för att avgränsa textrader. Signifierad av Unicode-beteckningen "Zl" (avgränsare, rad). Värdet är 12. |
| ParagraphSeparator | 13 | Tecken som används för att separera stycken. Signifierad av Unicode-beteckningen "Zp" (avgränsare, stycke). Värdet är 13. |
| Control | 14 | Styr kodtecken med unicode-värdet U+007F eller i intervallet U+0000 till U+001F eller U+0080 till U+009F. Signifierad av Unicode-beteckningen "Cc" (annan, kontroll). Värdet är 14. |
| Format | 15 | Formattecken som påverkar textlayouten eller hur textprocesserna fungerar, men som normalt inte återges. Signifierad av Unicode-beteckningen "Cf" (annat format). Värdet är 15. |
| Surrogate | 16 | Hög surrogat eller ett lågt surrogattecken. Surrogatkodvärden finns i intervallet U+D800 via U+DFFF. Signifierad av Unicode-beteckningen "Cs" (annan, surrogat). Värdet är 16. |
| PrivateUse | 17 | Privat användningstecken med ett Unicode-värde i intervallet U+E000 via U+F8FF. Signifierad av Unicode-beteckningen "Co" (annan, privat användning). Värdet är 17. |
| ConnectorPunctuation | 18 | Interpunktionstecken för anslutningsprogram som ansluter två tecken. Signifierad av Unicode-beteckningen "Pc" (skiljetecken, anslutningsapp). Värdet är 18. |
| DashPunctuation | 19 | Bindestreck eller bindestreck. Signifierad av Unicode-beteckningen "Pd" (skiljetecken, bindestreck). Värdet är 19. |
| OpenPunctuation | 20 | Inledande tecken för ett av de kopplade skiljetecken, till exempel parenteser, hakparenteser och klammerparenteser. Betecknas med Unicode-beteckningen "Ps" (skiljetecken, öppen). Värdet är 20. |
| ClosePunctuation | 21 | Avslutande tecken för ett av de parkopplade skiljetecken som parenteser, hakparenteser och klammerparenteser. Signifierad av Unicode-beteckningen "Pe" (skiljetecken, stäng). Värdet är 21. |
| InitialQuotePunctuation | 22 | Inledande citattecken eller inledande citattecken. Signifierad av Unicode-beteckningen "Pi" (skiljetecken, inledande citattecken). Värdet är 22. |
| FinalQuotePunctuation | 23 | Avslutande eller sista citattecken. Signifierad av Unicode-beteckningen "Pf" (skiljetecken, slutligt citattecken). Värdet är 23. |
| OtherPunctuation | 24 | Skiljetecken som inte är en koppling, ett bindestreck, öppen skiljetecken, nära skiljetecken, ett inledande citat eller ett sista citattecken. Signifierad av Unicode-beteckningen "Po" (skiljetecken, annat). Värdet är 24. |
| MathSymbol | 25 | Matematiskt symboltecken, till exempel "+" eller "= ". Signifierad av Unicode-beteckningen "Sm" (symbol, matematik). Värdet är 25. |
| CurrencySymbol | 26 | Valutasymboltecken. Signifierad av Unicode-beteckningen "Sc" (symbol, valuta). Värdet är 26. |
| ModifierSymbol | 27 | Symboltecken för modifierare, vilket indikerar ändringar av omgivande tecken. Bråksnedstrecket anger till exempel att talet till vänster är täljaren och talet till höger är nämnaren. Indikatorn betecknas med Unicode-beteckningen "Sk" (symbol, modifierare). Värdet är 27. |
| OtherSymbol | 28 | Symboltecken som inte är en matematisk symbol, en valutasymbol eller en modifierare. Signifierad av Unicode-beteckningen "So" (symbol, annan). Värdet är 28. |
| OtherNotAssigned | 29 | Tecken som inte har tilldelats till någon Unicode-kategori. Signifierad av Unicode-beteckningen "Cn" (annan, inte tilldelad). Värdet är 29. |
Exempel
I följande exempel visas tecknen och deras motsvarande kodpunkter för tecken i kategorin UppercaseLetter. Du kan ändra exemplet så att bokstäverna visas i någon annan kategori genom att ersätta UppercaseLetter med kategorin av intresse för dig i tilldelningen till variabeln category . Observera att utdata för vissa kategorier kan vara omfattande.
using System;
using System.Globalization;
public class Example
{
public static void Main()
{
int ctr = 0;
UnicodeCategory category = UnicodeCategory.UppercaseLetter;
for (ushort codePoint = 0; codePoint < ushort.MaxValue; codePoint++) {
Char ch = (char)codePoint;
if (CharUnicodeInfo.GetUnicodeCategory(ch) == category) {
if (ctr % 5 == 0)
Console.WriteLine();
Console.Write("{0} (U+{1:X4}) ", ch, codePoint);
ctr++;
}
}
Console.WriteLine();
Console.WriteLine("\n{0} characters are in the {1:G} category",
ctr, category);
}
}
Imports System.Globalization
Module Example
Public Sub Main()
Dim ctr As Integer = 0
Dim category As UnicodeCategory = UnicodeCategory.UppercaseLetter
For codePoint As UShort = 0 To UShort.MaxValue - 1
Dim ch As Char = Convert.ToChar(codePoint)
If CharUnicodeInfo.GetUnicodeCategory(ch) = category Then
If ctr Mod 5 = 0 Then Console.WriteLine()
Console.Write("{0} (U+{1:X4}) ", ch, codePoint)
ctr += 1
End If
Next
Console.WriteLine()
Console.WriteLine()
Console.WriteLine("{0} characters are in the {1:G} category",
ctr, category)
End Sub
End Module
Kommentarer
En medlem i UnicodeCategory uppräkningen returneras av Char.GetUnicodeCategory metoderna och CharUnicodeInfo.GetUnicodeCategory . Uppräkningen UnicodeCategory används också för att stödja Char metoder, till exempel IsUpper(Char). Sådana metoder avgör om ett angivet tecken är medlem i en viss allmän Unicode-kategori. En allmän Unicode-kategori definierar den breda klassificeringen av ett tecken, dvs. beteckning som en typ av bokstav, decimaltal, avgränsare, matematisk symbol, skiljetecken och så vidare.
Den här uppräkningen baseras på Unicode Standard version 5.0. Mer information finns i underavsnitten "UCD-filformat" och "Allmänna kategorivärden" i Unicode-teckendatabasen.
Unicode Standard definierar följande:
Ett surrogatpar är en kodad teckenrepresentation för ett enda abstrakt tecken som består av en sekvens med två kodenheter, där den första enheten i paret är en hög surrogat och den andra är en låg surrogat. En hög surrogat är en Unicode-kodpunkt i intervallet U+D800 via U+DBFF och en låg surrogat är en Unicode-kodpunkt i intervallet U+DC00 via U+DFFF.
En kombination av teckensekvens är en kombination av ett bastecken och ett eller flera kombinationstecken. Ett surrogatpar representerar ett bastecken eller ett kombinationstecken. Ett kombinationstecken är antingen avstånd eller icke-avstånd. Ett avstånd som kombinerar tecken tar upp ett avståndsläge på egen hand när det återges, medan ett icke-avstånd som kombinerar tecken inte gör det. Diakritiska tecken är ett exempel på icke-avstånd som kombinerar tecken.
En modifierarbokstav är ett fristående avståndstecken som, precis som ett kombinerande tecken, indikerar ändringar av en föregående bokstav.
Ett omslutande tecken är ett icke-avstånd som kombinerar tecken som omger alla tidigare tecken upp till och inklusive ett bastecken.
Ett formattecken är ett tecken som normalt inte återges men som påverkar textlayouten eller hur textprocesserna fungerar.
Unicode Standard definierar flera varianter av vissa skiljetecken. Ett bindestreck kan till exempel vara ett av flera kodvärden som representerar ett bindestreck, till exempel U+002D (bindestreck minus) eller U+00AD (mjukt bindestreck) eller U+2010 (bindestreck) eller U+2011 (icke-skärande bindestreck). Detsamma gäller för bindestreck, blankstegstecken och citattecken.
Unicode Standard tilldelar också koder till representationer av decimalsiffror som är specifika för ett visst skript eller språk, till exempel U+0030 (siffra noll) och U+0660 (Arabic-Indic siffra noll).