UnicodeCategory Enumeration
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Definiert die Unicode-Kategorie eines Zeichens.
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
- Vererbung
- Attribute
Felder
ClosePunctuation | 21 | Schließendes Zeichen eines Satzzeichenpaars wie einfache, eckige oder geschweifte Klammern. Gekennzeichnet durch die Unicode-Bezeichnung „Pe“ (Punctuation, Close (Interpunktion, schließend)). Der Wert ist 21. |
ConnectorPunctuation | 18 | Verbindungssatzzeichen, das zwei Zeichen verbindet. Gekennzeichnet durch die Unicode-Bezeichnung „Pc“ (Punctuation, Connector (Interpunktion, Verbindung)). Der Wert ist 18. |
Control | 14 | Steuerungscodezeichen, dessen Unicode-Wert gleich U+007F ist oder im Bereich U+0000 bis U+001F oder U+0080 bis U+009F liegt. Gekennzeichnet durch die Unicode-Bezeichnung „Cc“ (Character, Control (Zeichen, Steuerung)). Der Wert ist 14. |
CurrencySymbol | 26 | Währungssymbolzeichen. Gekennzeichnet durch die Unicode-Bezeichnung „Sc“ (Symbol, Currency (Symbol, Währung)). Der Wert ist 26. |
DashPunctuation | 19 | Gedankenstrich- oder Bindestrichzeichen. Gekennzeichnet durch die Unicode-Bezeichnung „Pd“ (Punctuation, Dash (Interpunktion, Bindestrich)). Der Wert ist 19. |
DecimalDigitNumber | 8 | Dezimalzeichen, d. h. ein Zeichen, das eine ganze Zahl im Bereich von 0 bis 9 darstellt. Gekennzeichnet durch die Unicode-Bezeichnung „Nd“ (Number, Decimal Digit (Zahl, Dezimalzahl)). Der Wert ist gleich „8“. |
EnclosingMark | 7 | Einschließendes Zeichen. Dies ist ein Kombinationszeichen ohne Zwischenraum, das alle vorhergehenden Zeichen bis einschließlich eines Basiszeichens umgibt. Gekennzeichnet durch die Unicode-Bezeichnung „Me“ (Mark, Enclosing (Satzzeichen, einschließend)). Der Wert ist 7. |
FinalQuotePunctuation | 23 | Schließendes Anführungszeichen oder Schlussanführungszeichen. Gekennzeichnet durch die Unicode-Bezeichnung „Pf“ (Punctuation, Fnitial Quote (Satzzeichen, Schlussanführungszeichen)). Der Wert ist 23. |
Format | 15 | Formatzeichen, das sich auf das Textlayout oder die Textverarbeitungsvorgänge auswirkt, normalerweise aber nicht gerendert wird. Gekennzeichnet durch die Unicode-Bezeichnung „Cf“ (Character, Format (Zeichen, Format)). Der Wert ist 15. |
InitialQuotePunctuation | 22 | Öffnendes Anführungszeichen oder Anfangsanführungszeichen. Gekennzeichnet durch die Unicode-Bezeichnung „Pi“ (Punctuation, Initial Quote (Satzzeichen, Anfangsanführungszeichen)). Der Wert ist 22. |
LetterNumber | 9 | Eine Zahl, die nicht durch eine Dezimalzahl, sondern durch einen Buchstaben dargestellt wird, z. B. „V“, das römische Zahlzeichen für Fünf. Der Indikator wird durch die Unicode-Bezeichnung „Nl“ (Number, Letter (Zahl, Buchstabe)) gekennzeichnet. Der Wert ist 9. |
LineSeparator | 12 | Zeichen, das zum Trennen von Textzeilen verwendet wird. Gekennzeichnet durch die Unicode-Bezeichnung „Zl“ (Separator, Line (Trennzeichen, Zeile)). Der Wert ist 12. |
LowercaseLetter | 1 | Kleinbuchstabe. Gekennzeichnet durch die Unicode-Bezeichnung „Ll“ (Letter, Lowercase (Buchstabe, Kleinschreibung)). Der Wert ist "1". |
MathSymbol | 25 | Mathematisches Symbolzeichen, z. B. „+“ oder „=“. Gekennzeichnet durch die Unicode-Bezeichnung „Sm“ (Symbol, Math (Symbol, Mathematik)). Der Wert ist 25. |
ModifierLetter | 3 | Modifiziererbuchstabe, d. h. ein frei stehendes Leerzeichen, das Änderungen an einem vorangehenden Buchstaben angibt. Gekennzeichnet durch die Unicode-Bezeichnung „Lm“ (Letter, Modifier (Buchstabe, Modifizierer)). Der Wert ist "3". |
ModifierSymbol | 27 | Modifizierersymbolzeichen, das Änderungen an umgebenden Zeichen angibt. So gibt z. B. der Bruchstrich an, dass die links stehende Zahl der Zähler und die rechts stehende Zahl der Nenner ist. Der Indikator wird durch die Unicode-Bezeichnung „Sk“ (Symbol, Modifier (Symbol, Modifizierer)) gekennzeichnet. Der Wert ist 27. |
NonSpacingMark | 5 | Ein Zeichen ohne Abstand, das Änderungen eines Basiszeichens angibt. Gekennzeichnet durch die Unicode-Bezeichnung „Mn“ (Mark, Nonspacing (Satzzeichen, ohne horizontalen Vorschub)). Der Wert ist "5". |
OpenPunctuation | 20 | Öffnendes Zeichen eines Satzzeichenpaars wie einfache, eckige oder geschweifte Klammern. Gekennzeichnet durch die Unicode-Bezeichnung „Ps“ (Punctuation, Open (Interpunktion, öffnend)). Der Wert ist 20. |
OtherLetter | 4 | Ein Buchstabe, der kein Großbuchstabe, Kleinbuchstabe, Titelschriftbuchstabe oder Modifiziererbuchstabe ist. Gekennzeichnet durch die Unicode-Bezeichnung „Lo“ (Letter, Other (Buchstabe, anderer)). Der Wert ist "4". |
OtherNotAssigned | 29 | Zeichen, das keiner Unicode-Kategorie zugeordnet ist. Gekennzeichnet durch die Unicode-Bezeichnung „Cn“ (Character, Not Assigned (Zeichen, nicht zugewiesen)). Der Wert ist 29. |
OtherNumber | 10 | Eine Zahl, die weder eine Dezimalzahl noch eine Buchstabenzahl ist, z. B. der Bruch 1/2. Der Indikator wird durch die Unicode-Bezeichnung „No“ (Number, Other (Zahl, andere)) gekennzeichnet. Der Wert ist 10. |
OtherPunctuation | 24 | Satzzeichen, das kein Verbindungszeichen, Gedankenstrich, öffnendes Satzzeichen, schließendes Satzzeichen, öffnendes Anführungszeichen oder schließendes Anführungszeichen ist. Gekennzeichnet durch die Unicode-Bezeichnung „Po“ (Punctuation, Other (Interpunktion, andere)). Der Wert ist 24. |
OtherSymbol | 28 | Symbolzeichen, das kein mathematisches Symbol, Währungssymbol oder Modifizierersymbol ist. Gekennzeichnet durch die Unicode-Bezeichnung „So“ (Symbol, Other (Symbol, andere)). Der Wert ist 28. |
ParagraphSeparator | 13 | Zeichen, das zum Trennen von Absätzen verwendet wird. Gekennzeichnet durch die Unicode-Bezeichnung „Zp“ (Separator, Paragraph (Trennzeichen, Absatz)). Der Wert ist 13. |
PrivateUse | 17 | Zeichen zur privaten Verwendung, dessen Unicode-Wert im Bereich U+E000 bis U+F8FF liegt. Gekennzeichnet durch die Unicode-Bezeichnung „Co“ (Character, Other (Zeichen, anderes)). Der Wert ist 17. |
SpaceSeparator | 11 | Leerzeichen, das keine Glyphe hat, aber weder ein Steuer- noch ein Formatzeichen ist. Gekennzeichnet durch die Unicode-Bezeichnung „Zs“ (Separator, Space (Trennzeichen, Leerzeichen)). Der Wert ist 11. |
SpacingCombiningMark | 6 | Ein Leerzeichen, das Änderungen eines Basiszeichens anzeigt und die Breite der Glyphe für dieses Basiszeichen beeinflusst. Gekennzeichnet durch die Unicode-Bezeichnung „Mc“ (Mark, Spacing Combining (Satzzeichen, Kombinationszeichen mit Vorschub)). Der Wert ist 6. |
Surrogate | 16 | Ein hohes oder niedriges Ersatzzeichen. Die Codewerte für Ersatzzeichen liegen im Bereich U+D800 bis U+DFFF. Gekennzeichnet durch die Unicode-Bezeichnung „Cs“ (Character, Surrogate (Zeichen, Ersatzzeichen)). Der Wert ist 16. |
TitlecaseLetter | 2 | Titelschriftbuchstabe. Gekennzeichnet durch die Unicode-Bezeichnung „Lt“ (Letter, Titlecase (Buchstabe, großer Anfangsbuchstabe)). Der Wert ist "2". |
UppercaseLetter | 0 | Großbuchstabe. Gekennzeichnet durch die Unicode-Bezeichnung „Lu“ (Letter, Uppercase (Buchstabe, Großschreibung)). Der Wert ist "0". |
Beispiele
Im folgenden Beispiel werden die Zeichen und die entsprechenden Codepunkte für Zeichen in der Kategorie UppercaseLetter angezeigt. Sie können das Beispiel so ändern, dass die Buchstaben in einer anderen Kategorie angezeigt werden, indem Sie UppercaseLetter durch die Kategorie ersetzen, die für Sie bei der Zuweisung zur category
Variablen von Interesse ist. Beachten Sie, dass die Ausgabe für einige Kategorien umfangreich sein kann.
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
Hinweise
Ein Member der UnicodeCategory Enumeration wird von den Char.GetUnicodeCategory Methoden und CharUnicodeInfo.GetUnicodeCategory zurückgegeben. Die UnicodeCategory Enumeration wird auch verwendet, um Methoden zu unterstützen Char , z. B IsUpper(Char). . Solche Methoden bestimmen, ob ein angegebenes Zeichen Mitglied einer bestimmten allgemeinen Unicode-Kategorie ist. Eine allgemeine Unicode-Kategorie definiert die allgemeine Klassifizierung eines Zeichens, d. h. die Bezeichnung als Typ von Buchstaben, Dezimalstellen, Trennzeichen, mathematisches Symbol, Interpunktion usw.
Diese Enumeration basiert auf Dem Unicode-Standard, Version 5.0. Weitere Informationen finden Sie in den Unterthemen „UCD File Format“ (UCD-Dateiformat) und „General Category Values“ (Allgemeine Kategorienwerte) der Unicode Character Database.
Der Unicode-Standard definiert Folgendes:
Ein Ersatzpaar ist eine codierte Zeichendarstellung für ein einzelnes abstraktes Zeichen, das aus einer Sequenz von zwei Codeeinheiten besteht, wobei die erste Einheit des Paares eine hohe Ersatzmenge und die zweite eine niedrige Ersatzeinheit ist. Ein hoher Ersatz ist ein Unicode-Codepunkt im Bereich U+D800 bis U+DBFF und ein niedriger Ersatzpunkt ist ein Unicode-Codepunkt im Bereich U+DC00 bis U+DFFF.
Eine kombinationsbasierte Zeichenfolge ist eine Kombination aus einem Basiszeichen und einem oder mehreren kombinierenden Zeichen. Ein Ersatzpaar stellt ein Basiszeichen oder ein kombinierendes Zeichen dar. Ein kombinierendes Zeichen ist entweder abstands- oder nonspacing. Ein abstandskombinierendes Zeichen nimmt beim Rendern eine Abstandsposition ein, während ein Nicht-Abstands-Kombinationszeichen dies nicht tut. Diakritische Elemente sind ein Beispiel für nicht überschreibende Kombinationen von Zeichen.
Ein Modifiziererbuchstabe ist ein frei stehendes Abstandszeichen, das wie ein kombinierendes Zeichen Änderungen eines vorangehenden Buchstabens angibt.
Eine umschließende Markierung ist ein nicht überschreibendes, kombiniertes Zeichen, das alle vorherigen Zeichen bis zu und einschließlich eines Basiszeichens umgibt.
Ein Formatzeichen ist ein Zeichen, das normalerweise nicht gerendert wird, das sich jedoch auf das Layout von Text oder den Vorgang von Textprozessen auswirkt.
Der Unicode-Standard definiert mehrere Variationen für einige Satzzeichen. Ein Bindestrich kann beispielsweise einer von mehreren Codewerten sein, die einen Bindestrich darstellen, z. B. U+002D (Bindestrich minus) oder U+00AD (weicher Bindestrich) oder U+2010 (Bindestrich) oder U+2011 (Bindestrich ohne Bruch). Gleiches gilt für Bindestriche, Leerzeichen und Anführungszeichen.
Der Unicode-Standard weist auch Codes für Darstellungen von Dezimalstellen zu, die für ein bestimmtes Skript oder eine bestimmte Sprache spezifisch sind, z. B. U+0030 (Ziffer null) und U+0660 (arabisch-indische Ziffer null).