UnicodeCategory Wyliczenie
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Definiuje kategorię Unicode znaku.
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
- Dziedziczenie
- Atrybuty
Pola
ClosePunctuation | 21 | Znak zamykający jednego z sparowanych znaków interpunkcyjnych, takich jak nawiasy, nawiasy kwadratowe i nawiasy klamrowe. Oznaczona oznaczeniem Unicode "Pe" (interpunkcja, zamknij). Wartość to 21. |
ConnectorPunctuation | 18 | Znak interpunkcyjny łącznika łączący dwa znaki. Oznaczane oznaczeniem Unicode "Pc" (znaki interpunkcyjne, łącznik). Wartość to 18. |
Control | 14 | Znak kodu sterującego z wartością Unicode U+007F lub w zakresie U+0000 do U+001F lub U+0080 do U+009F. Oznaczona oznaczeniem Unicode "CC" (inne, kontrolka). Wartość to 14. |
CurrencySymbol | 26 | Znak symbolu waluty. Oznaczony oznaczeniem Unicode "Sc" (symbol, waluta). Wartość to 26. |
DashPunctuation | 19 | Znak kreski lub łącznika. Oznaczane oznaczeniem Unicode "Pd" (interpunkcja, kreska). Wartość to 19. |
DecimalDigitNumber | 8 | Znak cyfry dziesiętnej, czyli znak reprezentujący liczbę całkowitą w zakresie od 0 do 9. Oznaczane oznaczeniem Unicode "Nd" (liczba, cyfra dziesiętna). Wartość to 8. |
EnclosingMark | 7 | Otaczający znak znak, który jest znakiem nienależącym do znaku łączącego, który otacza wszystkie poprzednie znaki aż do znaku podstawowego i w tym znak podstawowy. Oznaczone oznaczeniem Unicode "Me" (znak, ujęcie). Wartość to 7. |
FinalQuotePunctuation | 23 | Znak zamykającego lub końcowego cudzysłowu. Oznaczony oznaczeniem Unicode "Pf" (znak interpunkcyjny, ostateczny cudzysłów). Wartość to 23. |
Format | 15 | Znak formatu, który ma wpływ na układ tekstu lub operację procesów tekstowych, ale nie jest zwykle renderowany. Oznaczony oznaczeniem Unicode "Cf" (inne, format). Wartość to 15. |
InitialQuotePunctuation | 22 | Otwierający lub początkowy znak cudzysłowu. Oznaczane oznaczeniem Unicode "Pi" (interpunkcja, cudzysłów początkowy). Wartość to 22. |
LetterNumber | 9 | Liczba reprezentowana przez literę, a nie cyfrę dziesiętną, na przykład cyfrę rzymską dla pięciu, czyli "V". Wskaźnik jest oznaczony oznaczeniem Unicode "Nl" (cyfra, litera). Wartość to 9. |
LineSeparator | 12 | Znak używany do oddzielania wierszy tekstu. Oznaczane oznaczeniem Unicode "Zl" (separator, linia). Wartość to 12. |
LowercaseLetter | 1 | Mała litera. Oznaczony oznaczeniem Unicode "Ll" (litera, małe litery). Wartość to 1. |
MathSymbol | 25 | Znak symbolu matematycznego, taki jak "+" lub "= ". Oznaczony oznaczeniem Unicode "Sm" (symbol, matematyka). Wartość to 25. |
ModifierLetter | 3 | Znak litery modyfikatora, który jest znakiem odstępu wolnego, który wskazuje modyfikacje poprzedniej litery. Oznaczony oznaczeniem Unicode "Lm" (litera, modyfikator). Wartość to 3. |
ModifierSymbol | 27 | Znak symbolu modyfikatora, który wskazuje modyfikacje otaczających znaków. Na przykład ukośnik ułamka wskazuje, że liczba po lewej stronie jest licznikiem, a liczba po prawej stronie jest mianownikiem. Wskaźnik jest oznaczony oznaczeniem Unicode "Sk" (symbol, modyfikator). Wartość to 27. |
NonSpacingMark | 5 | Znak bez ściągania, który wskazuje modyfikacje znaku podstawowego. Oznaczone oznaczeniem Unicode "Mn" (znak, bez znaczników). Wartość to 5. |
OpenPunctuation | 20 | Znak otwierający jednego z sparowanych znaków interpunkcyjnych, takich jak nawiasy, nawiasy kwadratowe i nawiasy klamrowe. Oznaczane oznaczeniem Unicode "Ps" (interpunkcja, otwarte). Wartość to 20. |
OtherLetter | 4 | Litera, która nie jest wielką literą, małą literą, literą tytułową lub literą modyfikującą. Oznaczony oznaczeniem Unicode "Lo" (litera, inne). Wartość to 4. |
OtherNotAssigned | 29 | Znak, który nie jest przypisany do żadnej kategorii Unicode. Oznaczony oznaczeniem Unicode "Cn" (inne, nieprzypisane). Wartość to 29. |
OtherNumber | 10 | Liczba, która nie jest cyfrą dziesiętną ani cyfrą literową, na przykład ułamkiem 1/2. Wskaźnik jest oznaczony oznaczeniem Unicode "Nie" (liczba, inne). Wartość to 10. |
OtherPunctuation | 24 | Znak interpunkcyjny, który nie jest łącznikiem, kreską, otwartą interpunkcją, zamykaną interpunkcją, cudzysłowem początkowym lub końcowym cudzysłowem. Oznaczane oznaczeniem Unicode "Po" (interpunkcja, inne). Wartość to 24. |
OtherSymbol | 28 | Znak symbolu, który nie jest symbolem matematycznym, symbolem waluty lub symbolem modyfikatora. Oznaczane oznaczeniem Unicode "So" (symbol, inne). Wartość to 28. |
ParagraphSeparator | 13 | Znak używany do oddzielania akapitów. Oznaczane oznaczeniem Unicode "Zp" (separator, akapit). Wartość to 13. |
PrivateUse | 17 | Znak prywatnego użycia z wartością Unicode w zakresie U+E000 do U+F8FF. Oznaczane oznaczeniem Unicode "Co" (inne, prywatne użycie). Wartość to 17. |
SpaceSeparator | 11 | Znak spacji, który nie zawiera symbolu, ale nie jest znakiem kontrolki ani formatu. Oznaczane oznaczeniem Unicode "Zs" (separator, spacja). Wartość to 11. |
SpacingCombiningMark | 6 | Znak odstępu, który wskazuje modyfikacje znaku podstawowego i wpływa na szerokość glif dla tego znaku podstawowego. Oznaczone oznaczeniem Unicode "Mc" (znak, odstępy łączące). Wartość to 6. |
Surrogate | 16 | Wysoki surogat lub niski znak zastępczy. Wartości kodu zastępczego znajdują się w zakresie U+D800 do U+DFFF. Oznaczony oznaczeniem Unicode "Cs" (inne, zastępcze). Wartość to 16. |
TitlecaseLetter | 2 | Litera tytułu. Oznaczony oznaczeniem Unicode "Lt" (litera, tytułowa). Wartość to 2. |
UppercaseLetter | 0 | Wielka litera. Oznaczony oznaczeniem Unicode "Lu" (litera, wielkie litery). Wartość to 0. |
Przykłady
Poniższy przykład przedstawia znaki i odpowiadające im punkty kodu dla znaków w kategorii Wielkie literyLetter. Możesz zmodyfikować przykład, aby wyświetlić litery w dowolnej innej kategorii, zastępując ciąg UppercaseLetter interesujący Cię kategorią przypisania do zmiennej category
. Należy pamiętać, że dane wyjściowe dla niektórych kategorii mogą być obszerne.
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
Uwagi
Element członkowski UnicodeCategory wyliczenia jest zwracany przez Char.GetUnicodeCategory metody i CharUnicodeInfo.GetUnicodeCategory . Wyliczenie UnicodeCategory jest również używane do obsługi Char metod, takich jak IsUpper(Char). Takie metody określają, czy określony znak jest członkiem określonej kategorii ogólnej Unicode. Kategoria ogólna Unicode definiuje szeroką klasyfikację znaku, czyli oznaczenie jako typ litery, cyfry dziesiętnej, separatora, symbolu matematycznego, interpunkcji itd.
Ta wyliczenie jest oparta na standardzie Unicode w wersji 5.0. Aby uzyskać więcej informacji, zobacz tematy podrzędne "Format pliku UCD" i "Ogólne wartości kategorii" w bazie danych znaków Unicode.
Standard Unicode definiuje następujące elementy:
Para zastępcza jest reprezentacją znaków kodowanych dla pojedynczego abstrakcyjnego znaku, który składa się z sekwencji dwóch jednostek kodu, gdzie pierwsza jednostka pary jest wysokim zastępcą, a druga jest niskim zastępcą. Wysoki surogat to punkt kodu Unicode w zakresie U+D800 do U+DBFF, a niski zastępca jest punktem kodu Unicode w zakresie U+DC00 do U+DFFF.
Sekwencja znaków łącząca jest kombinacją znaku podstawowego i co najmniej jednego znaku łączącego. Para zastępcza reprezentuje znak podstawowy lub znak łączący. Znak łączący to odstępy lub odstępy. Znak łączący odstępy zajmuje samoczynnie położenie odstępu podczas renderowania, podczas gdy znak niesprzejmujący połączenie nie jest. Znaki diakrytyczne są przykładem znaków niezwiązanych ze sobą.
Litera modyfikatora to wolnostojący znak odstępu, który, podobnie jak znak łączący, wskazuje modyfikacje poprzedniej litery.
Cudzysłów jest znakiem nienależącym do znaku łączącego, który otacza wszystkie poprzednie znaki aż do znaku podstawowego i w tym znak podstawowy.
Znak formatu to znak, który nie jest zwykle renderowany, ale ma wpływ na układ tekstu lub operację procesów tekstowych.
Standard Unicode definiuje kilka odmian dla niektórych znaków interpunkcyjnych. Na przykład łącznik może być jedną z kilku wartości kodu reprezentujących łącznik, takich jak U+002D (łącznik-minus) lub U+00AD (łącznik miękki) lub U+2010 (łącznik) lub U+2011 (łącznik bez podziału). To samo dotyczy łączników, znaków spacji i cudzysłowów.
Standard Unicode przypisuje również kody do reprezentacji cyfr dziesiętnych, które są specyficzne dla danego skryptu lub języka, na przykład U+0030 (cyfra zero) i U+0660 (cyfra arabska-cyfra zero).