UnicodeCategory Wyliczenie

Definicja

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
UnicodeCategory
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. Oznaczane przez oznaczenie Unicode "CC" (inne, kontrolki). Wartość to 14.

CurrencySymbol 26

Znak symbolu waluty. Oznaczane przez oznaczenie Unicode "Sc" (symbol, waluta). Wartość to 26.

DashPunctuation 19

Znak kreski lub łącznika. Oznaczane przez oznaczenie 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 przez oznaczenie Unicode "Nd" (liczba, cyfra dziesiętna). Wartość to 8.

EnclosingMark 7

Otaczający znak znacznika, który jest niezwiązanym znakiem łączącym, który otacza wszystkie poprzednie znaki do 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. Oznaczane przez oznaczenie Unicode "Pf" (interpunkcja, ostateczny cudzysłów). Wartość to 23.

Format 15

Znak formatu, który wpływa na układ tekstu lub operacji procesów tekstowych, ale nie jest zwykle renderowany. Oznaczane przez oznaczenie Unicode "Cf" (inne, format). Wartość to 15.

InitialQuotePunctuation 22

Otwierający lub początkowy znak cudzysłowu. Oznaczane przez oznaczenie Unicode "Pi" (interpunkcja, początkowy cudzysłów). 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. Oznaczona oznaczeniem Unicode "Zl" (separator, linia). Wartość to 12.

LowercaseLetter 1

Mała litera. Oznaczane przez oznaczenie Unicode "Ll" (litera, małe litery). Wartość to 1.

MathSymbol 25

Znak symbolu matematycznego, taki jak "+" lub "=". Oznaczane przez oznaczenie 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. Oznaczane przez oznaczenie Unicode "Lm" (litera, modyfikator). Wartość to 3.

ModifierSymbol 27

Znak symbolu modyfikatora, który wskazuje na 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 inny niż znak wskazujący modyfikacje znaku podstawowego. Oznaczane przez oznaczenie Unicode "Mn" (znak, nonspacing). Wartość to 5.

OpenPunctuation 20

Znak otwierający jeden z sparowanych znaków interpunkcyjnych, takich jak nawiasy nawiasy kwadratowe i nawiasy klamrowe. Oznaczane przez oznaczenie Unicode "Ps" (interpunkcja, otwarte). Wartość to 20.

OtherLetter 4

Litera, która nie jest wielką literą, małą literą, literą tytułową lub literą modyfikatora. Oznaczane przez oznaczenie Unicode "Lo" (litera, inne). Wartość to 4.

OtherNotAssigned 29

Znak, który nie jest przypisany do żadnej kategorii Unicode. Oznaczane przez oznaczenie Unicode "Cn" (inne, nieprzypisane). Wartość to 29.

OtherNumber 10

Liczba, która nie jest cyfrą dziesiętną ani cyfrą litery, 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ą, znakiem interpunkcyjnym, cudzysłowem początkowym lub ostatnim cudzysłowem. Oznaczane przez oznaczenie Unicode "Po" (interpunkcja, inne). Wartość to 24.

OtherSymbol 28

Znak symbolu, który nie jest symbolem matematycznym, symbolem waluty lub symbolem modyfikatora. Oznaczane przez oznaczenie Unicode "So" (symbol, inne). Wartość to 28.

ParagraphSeparator 13

Znak używany do oddzielania akapitów. Oznaczane przez oznaczenie Unicode "Zp" (separator, akapit). Wartość to 13.

PrivateUse 17

Znak użycia prywatnego z wartością Unicode w zakresie U+E000 do U+F8FF. Oznaczane przez oznaczenie Unicode "Co" (inne, prywatne użycie). Wartość to 17.

SpaceSeparator 11

Znak spacji, który nie ma glifów, ale nie jest znakiem kontrolki ani formatu. Oznaczane przez oznaczenie 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 podstawowego znaku. Oznaczone oznaczeniem Unicode "Mc" (znak, łączenie odstępów). Wartość to 6.

Surrogate 16

Wysoki znak zastępczy lub niski znak zastępczy. Wartości kodu zastępczego znajdują się w zakresie U+D800 do U+DFFF. Oznaczane przez oznaczenie Unicode "Cs" (inne, zastępcze). Wartość to 16.

TitlecaseLetter 2

Litera tytułowa. Oznaczona oznaczeniem Unicode "Lt" (litera, tytułowa). Wartość to 2.

UppercaseLetter 0

Wielka litera. Oznaczane przez oznaczenie 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 wyliczenia UnicodeCategory 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 podtopy "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 zakodowaną reprezentacją znaków dla pojedynczego abstrakcyjnego znaku, który składa się z sekwencji dwóch jednostek kodu, gdzie pierwsza jednostka pary jest wysokim zastępcą, a drugi jest niskim zastępcą. Wysoki zastępca 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.

Łącząca sekwencja znaków to kombinacja znaku podstawowego i co najmniej jeden znak łączący. Para zastępcza reprezentuje znak podstawowy lub znak łączący. Znak łączący to odstępy lub odstępy. Odstęp łączący znak zajmuje położenie odstępu podczas renderowania, podczas gdy znak łączący nie działa. 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).

Dotyczy

Zobacz też