CharUnicodeInfo CharUnicodeInfo CharUnicodeInfo CharUnicodeInfo Class

Definition

Ruft Informationen zu einem Unicode-Zeichen ab.Retrieves information about a Unicode character. Diese Klasse kann nicht vererbt werden.This class cannot be inherited.

public ref class CharUnicodeInfo abstract sealed
public static class CharUnicodeInfo
type CharUnicodeInfo = class
Public Class CharUnicodeInfo
Vererbung
CharUnicodeInfoCharUnicodeInfoCharUnicodeInfoCharUnicodeInfo

Beispiele

Das folgende Codebeispiel zeigt die Werte, die von jeder Methode für verschiedene Arten von Zeichen zurückgegeben.The following code example shows the values returned by each method for different types of characters.

using namespace System;
using namespace System::Globalization;
void PrintProperties( Char c );
int main()
{
   Console::WriteLine( "                                        c  Num   Dig   Dec   UnicodeCategory" );
   Console::Write( "U+0061 LATIN SMALL LETTER A            " );
   PrintProperties( L'a' );
   Console::Write( "U+0393 GREEK CAPITAL LETTER GAMMA      " );
   PrintProperties( L'\u0393' );
   Console::Write( "U+0039 DIGIT NINE                      " );
   PrintProperties( L'9' );
   Console::Write( "U+00B2 SUPERSCRIPT TWO                 " );
   PrintProperties( L'\u00B2' );
   Console::Write( "U+00BC VULGAR FRACTION ONE QUARTER     " );
   PrintProperties( L'\u00BC' );
   Console::Write( "U+0BEF TAMIL DIGIT NINE                " );
   PrintProperties( L'\u0BEF' );
   Console::Write( "U+0BF0 TAMIL NUMBER TEN                " );
   PrintProperties( L'\u0BF0' );
   Console::Write( "U+0F33 TIBETAN DIGIT HALF ZERO         " );
   PrintProperties( L'\u0F33' );
   Console::Write( "U+2788 CIRCLED SANS-SERIF DIGIT NINE   " );
   PrintProperties( L'\u2788' );
}

void PrintProperties( Char c )
{
   Console::Write( " {0,-3}", c );
   Console::Write( " {0,-5}", CharUnicodeInfo::GetNumericValue( c ) );
   Console::Write( " {0,-5}", CharUnicodeInfo::GetDigitValue( c ) );
   Console::Write( " {0,-5}", CharUnicodeInfo::GetDecimalDigitValue( c ) );
   Console::WriteLine( "{0}", CharUnicodeInfo::GetUnicodeCategory( c ) );
}

/*
This code produces the following output.  Some characters might not display at the console.

                                        c  Num   Dig   Dec   UnicodeCategory
U+0061 LATIN SMALL LETTER A             a   -1    -1    -1   LowercaseLetter
U+0393 GREEK CAPITAL LETTER GAMMA       \u0393   -1    -1    -1   UppercaseLetter
U+0039 DIGIT NINE                       9   9     9     9    DecimalDigitNumber
U+00B2 SUPERSCRIPT TWO                  \u00B2   2     2     2    OtherNumber
U+00BC VULGAR FRACTION ONE QUARTER      \u00BC   0.25  -1    -1   OtherNumber
U+0BEF TAMIL DIGIT NINE                 \u0BEF   9     9     9    DecimalDigitNumber
U+0BF0 TAMIL NUMBER TEN                 \u0BF0   10    -1    -1   OtherNumber
U+0F33 TIBETAN DIGIT HALF ZERO          \u0F33   -0.5  -1    -1   OtherNumber
U+2788 CIRCLED SANS-SERIF DIGIT NINE    \u2788   9     9     -1   OtherNumber

*/
using System;
using System.Globalization;

public class SamplesCharUnicodeInfo  {

   public static void Main()  {

      Console.WriteLine( "                                        c  Num   Dig   Dec   UnicodeCategory" );

      Console.Write( "U+0061 LATIN SMALL LETTER A            " );
      PrintProperties( 'a' );

      Console.Write( "U+0393 GREEK CAPITAL LETTER GAMMA      " );
      PrintProperties( '\u0393' );

      Console.Write( "U+0039 DIGIT NINE                      " );
      PrintProperties( '9' );

      Console.Write( "U+00B2 SUPERSCRIPT TWO                 " );
      PrintProperties( '\u00B2' );

      Console.Write( "U+00BC VULGAR FRACTION ONE QUARTER     " );
      PrintProperties( '\u00BC' );

      Console.Write( "U+0BEF TAMIL DIGIT NINE                " );
      PrintProperties( '\u0BEF' );

      Console.Write( "U+0BF0 TAMIL NUMBER TEN                " );
      PrintProperties( '\u0BF0' );

      Console.Write( "U+0F33 TIBETAN DIGIT HALF ZERO         " );
      PrintProperties( '\u0F33' );

      Console.Write( "U+2788 CIRCLED SANS-SERIF DIGIT NINE   " );
      PrintProperties( '\u2788' );

   }

   public static void PrintProperties( char c )  {
      Console.Write( " {0,-3}", c );
      Console.Write( " {0,-5}", CharUnicodeInfo.GetNumericValue( c ) );
      Console.Write( " {0,-5}", CharUnicodeInfo.GetDigitValue( c ) );
      Console.Write( " {0,-5}", CharUnicodeInfo.GetDecimalDigitValue( c ) );
      Console.WriteLine( "{0}", CharUnicodeInfo.GetUnicodeCategory( c ) );
   }

}


/*
This code produces the following output.  Some characters might not display at the console.

                                        c  Num   Dig   Dec   UnicodeCategory
U+0061 LATIN SMALL LETTER A             a   -1    -1    -1   LowercaseLetter
U+0393 GREEK CAPITAL LETTER GAMMA       \u0393   -1    -1    -1   UppercaseLetter
U+0039 DIGIT NINE                       9   9     9     9    DecimalDigitNumber
U+00B2 SUPERSCRIPT TWO                  \u00B2   2     2     2    OtherNumber
U+00BC VULGAR FRACTION ONE QUARTER      \u00BC   0.25  -1    -1   OtherNumber
U+0BEF TAMIL DIGIT NINE                 \u0BEF   9     9     9    DecimalDigitNumber
U+0BF0 TAMIL NUMBER TEN                 \u0BF0   10    -1    -1   OtherNumber
U+0F33 TIBETAN DIGIT HALF ZERO          \u0F33   -0.5  -1    -1   OtherNumber
U+2788 CIRCLED SANS-SERIF DIGIT NINE    \u2788   9     9     -1   OtherNumber

*/

Imports System
Imports System.Globalization
Imports Microsoft.VisualBasic

Public Class SamplesCharUnicodeInfo   

   Public Shared Sub Main()

      Console.WriteLine("                                        c  Num   Dig   Dec   UnicodeCategory")

      Console.Write("U+0061 LATIN SMALL LETTER A            ")
      PrintProperties("a"c)

      Console.Write("U+0393 GREEK CAPITAL LETTER GAMMA      ")
      PrintProperties(ChrW(&H0393))

      Console.Write("U+0039 DIGIT NINE                      ")
      PrintProperties("9"c)

      Console.Write("U+00B2 SUPERSCRIPT TWO                 ")
      PrintProperties(ChrW(&H00B2))

      Console.Write("U+00BC VULGAR FRACTION ONE QUARTER     ")
      PrintProperties(ChrW(&H00BC))

      Console.Write("U+0BEF TAMIL DIGIT NINE                ")
      PrintProperties(ChrW(&H0BEF))

      Console.Write("U+0BF0 TAMIL NUMBER TEN                ")
      PrintProperties(ChrW(&H0BF0))

      Console.Write("U+0F33 TIBETAN DIGIT HALF ZERO         ")
      PrintProperties(ChrW(&H0F33))

      Console.Write("U+2788 CIRCLED SANS-SERIF DIGIT NINE   ")
      PrintProperties(ChrW(&H2788))

   End Sub 'Main

   Public Shared Sub PrintProperties(c As Char)
      Console.Write(" {0,-3}", c)
      Console.Write(" {0,-5}", CharUnicodeInfo.GetNumericValue(c))
      Console.Write(" {0,-5}", CharUnicodeInfo.GetDigitValue(c))
      Console.Write(" {0,-5}", CharUnicodeInfo.GetDecimalDigitValue(c))
      Console.WriteLine("{0}", CharUnicodeInfo.GetUnicodeCategory(c))
   End Sub 'PrintProperties

End Class 'SamplesCharUnicodeInfo 


'This code produces the following output.  Some characters might not display at the console.
'
'                                        c  Num   Dig   Dec   UnicodeCategory
'U+0061 LATIN SMALL LETTER A             a   -1    -1    -1   LowercaseLetter
'U+0393 GREEK CAPITAL LETTER GAMMA       \u0393   -1    -1    -1   UppercaseLetter
'U+0039 DIGIT NINE                       9   9     9     9    DecimalDigitNumber
'U+00B2 SUPERSCRIPT TWO                  \u00B2   2     2     2    OtherNumber
'U+00BC VULGAR FRACTION ONE QUARTER      \u00BC   0.25  -1    -1   OtherNumber
'U+0BEF TAMIL DIGIT NINE                 \u0BEF   9     9     9    DecimalDigitNumber
'U+0BF0 TAMIL NUMBER TEN                 \u0BF0   10    -1    -1   OtherNumber
'U+0F33 TIBETAN DIGIT HALF ZERO          \u0F33   -0.5  -1    -1   OtherNumber
'U+2788 CIRCLED SANS-SERIF DIGIT NINE    \u2788   9     9     -1   OtherNumber

Hinweise

Die Unicode-Standard definiert eine Reihe von Unicode-Zeichenkategorien.The Unicode Standard defines a number of Unicode character categories. Beispielsweise kann ein Zeichen als Großbuchstabe, Kleinbuchstabe, eine dezimale Ziffer, einen Buchstaben, einer Zahl, einen Absatzseparator, ein mathematisches Symbol oder ein Währungssymbol kategorisiert werden.For example, a character might be categorized as an uppercase letter, a lowercase letter, a decimal digit number, a letter number, a paragraph separator, a math symbol, or a currency symbol. Die Anwendung kann die Zeichenkategorie zur Steuerung der zeichenfolgenbasierten Vorgänge, z. B. analysieren oder Extrahieren von Substring mit regulären Ausdrücken verwenden.Your application can use the character category to govern string-based operations, such as parsing or extracting substring with regular expressions. Die UnicodeCategory -Enumeration definiert die möglichen Zeichenkategorien.The UnicodeCategory enumeration defines the possible character categories.

Sie verwenden die CharUnicodeInfo Klasse zum Abrufen der UnicodeCategory Wert für ein bestimmtes Zeichen.You use the CharUnicodeInfo class to obtain the UnicodeCategory value for a specific character. Die CharUnicodeInfo -Klasse definiert Methoden, die die folgenden Unicode-Zeichen-Werte zurückgeben:The CharUnicodeInfo class defines methods that return the following Unicode character values:

  • Die bestimmte Kategorie, zu der ein paar Zeichen oder Ersatzzeichenpaar gehört.The specific category to which a character or surrogate pair belongs. Der zurückgegebene Wert ist ein Mitglied der UnicodeCategory Enumeration.The value returned is a member of the UnicodeCategory enumeration.

  • Ein numerischer Wert.Numeric value. Gilt nur für numerische Zeichen, wie z.B. Brüche tiefgestellten Zeichen, hoch-, römische Zahlen, Währung Zähler, eingekreisten Zahlen und Ziffern.Applies only to numeric characters, including fractions, subscripts, superscripts, Roman numerals, currency numerators, encircled numbers, and script-specific digits.

  • Der Ziffernwert.Digit value. Gilt für numerische Zeichen, die mit anderen numerischen Zeichen, die Darstellung einer ganzen Zahl in einem Zahlensystem kombiniert werden können.Applies to numeric characters that can be combined with other numeric characters to represent a whole number in a numbering system.

  • Der Dezimalziffernwert.Decimal digit value. Gilt nur für Zeichen, die Dezimalziffern im System dezimale (Basis 10) darstellen.Applies only to characters that represent decimal digits in the decimal (base 10) system. Eine dezimale Ziffer ist einer der zehn Ziffern von 0 bis 9 möglich.A decimal digit can be one of ten digits, from zero through nine. Diese Zeichen sind Mitglied der UnicodeCategory.DecimalDigitNumber Kategorie.These characters are members of the UnicodeCategory.DecimalDigitNumber category.

Darüber hinaus die CharUnicodeInfo Klasse wird intern verwendet, um eine Anzahl von anderen .NET Framework-Typen und Methoden, die auf Klassifizierung von Zeichen basieren.In addition, the CharUnicodeInfo class is used internally by a number of other .NET Framework types and methods that rely on character classification. Dazu gehören:These include:

  • Die StringInfo -Klasse, die mit dem Text-Elemente, statt einzelne Zeichen in einer Zeichenfolge funktioniert.The StringInfo class, which works with textual elements instead of single characters in a string.

  • Die Überladungen der Char.GetUnicodeCategory -Methode, die die Kategorie zu ermitteln, zu der ein paar Zeichen oder Ersatzzeichenpaar gehört.The overloads of the Char.GetUnicodeCategory method, which determine the category to which a character or surrogate pair belongs.

  • Die Zeichenklassen von erkannten Regex, die .NET Framework Engine für reguläre Ausdrücke.The character classes recognized by Regex, the .NET Framework's regular expression engine.

Wenn Sie diese Klasse in Ihren Anwendungen verwenden, behalten Beachten Sie die folgenden programmierüberlegungen in Bezug auf mit der Char Typ.When using this class in your applications, keep in mind the following programming considerations for using the Char type. Der Typ kann schwierig zu verwenden sein, und Zeichenfolgen werden in der Regel besser, für die Darstellung der linguistischen Inhalt.The type can be difficult to use, and strings are generally preferable for representing linguistic content.

  • Ein Char Objekt entspricht nicht immer in ein einzelnes Zeichen.A Char object does not always correspond to a single character. Obwohl die Char Typ stellt einen einzelnen 16-Bit-Wert, der einige Zeichen (z. B. graphemgruppen und Surrogate-Paare) bestehen aus zwei oder mehr UTF-16-Codeeinheiten.Although the Char type represents a single 16-bit value, some characters (such as grapheme clusters and surrogate pairs) consist of two or more UTF-16 code units. Weitere Informationen finden Sie unter "Char-Objekten und Unicode-Zeichen" in der String Klasse.For more information, see "Char Objects and Unicode Characters" in the String class.

  • Das Konzept einer 'character', ist auch flexibler.The notion of a "character" is also flexible. Ein Zeichen wird häufig als ein Symbol betrachtet, aber viele Symbole erfordern mehrere Codepunkte.A character is often thought of as a glyph, but many glyphs require multiple code points. Z. B. "ä" möglich dargestellt durch zwei Codepunkte ("A" und U + 0308, die die Kombination von Diärese ist), oder durch einen einzigen Codepunkt ("" ä "" "oder" U + 00 a 4 ").For example, ä can be represented either by two code points ("a" plus U+0308, which is the combining diaeresis), or by a single code point ("ä" or U+00A4). Einige Sprachen verfügen über viele Buchstaben, Zeichen und Symbole, die mehrere Codepunkte, erfordern die in der Darstellung von Inhalten linguistische verwirrend sein kann.Some languages have many letters, characters, and glyphs that require multiple code points, which can cause confusion in linguistic content representation. Beispielsweise besteht eine ΰ (U + 03B0, griechischen Ypsilon mit Trennpunkte und Tonzeichen), aber es gibt keine entsprechenden Großbuchstaben.For example, there is a ΰ (U+03B0, Greek small letter upsilon with dialytika and tonos), but there is no equivalent capital letter. Solche Werte Großbuchstaben ruft einfach den ursprünglichen Wert ab.Uppercasing such a value simply retrieves the original value.

Hinweise für Aufrufer

Erkannte Zeichen und die einzelnen Kategorien, die sie angehören, werden durch die Unicode-Standard definiert und können von einer Version des Unicode-Standards zu einem anderen ändern.Recognized characters and the specific categories to which they belong are defined by the Unicode standard and can change from one version of the Unicode Standard to another. Kategorisierung von Zeichen in einer bestimmten Version von .NET Framework basiert auf einer einzelnen Version von der Unicode-Standard, unabhängig vom zugrunde liegenden Betriebssystem auf dem .NET Framework ausgeführt wird.Categorization of characters in a particular version of the .NET Framework is based on a single version of the Unicode Standard regardless of the underlying operating system on which the .NET Framework is running. Die folgende Tabelle enthält die Versionen von .NET Framework seit der .NET Framework 4.NET Framework 4 und die Versionen von Unicode-Standard verwendet, um Zeichen zu klassifizieren.The following table lists versions of the .NET Framework since the .NET Framework 4.NET Framework 4 and the versions of the Unicode Standard used to classify characters.

.NET Framework-Version.NET Framework version Version des Unicode-StandardsVersion of the Unicode Standard
[!INCLUDE[net_v40_long](~/includes/net-v40-long-md.md)] [The Unicode Standard, Version 5.0.0](https://www.unicode.org/versions/Unicode5.0.0/) [The Unicode Standard, Version 5.0.0](https://www.unicode.org/versions/Unicode5.0.0/)
[!INCLUDE[net_v45](~/includes/net-v45-md.md)] [The Unicode Standard, Version 5.0.0](https://www.unicode.org/versions/Unicode5.0.0/) [The Unicode Standard, Version 5.0.0](https://www.unicode.org/versions/Unicode5.0.0/)
[!INCLUDE[net_v451](~/includes/net-v451-md.md)] [The Unicode Standard, Version 5.0.0](https://www.unicode.org/versions/Unicode5.0.0/) [The Unicode Standard, Version 5.0.0](https://www.unicode.org/versions/Unicode5.0.0/)
[!INCLUDE[net_v452](~/includes/net-v452-md.md)] [The Unicode Standard, Version 5.0.0](https://www.unicode.org/versions/Unicode5.0.0/) [The Unicode Standard, Version 5.0.0](https://www.unicode.org/versions/Unicode5.0.0/)
[!INCLUDE[net_v46](~/includes/net-v46-md.md)] [The Unicode Standard, Version 6.3.0](https://www.unicode.org/versions/Unicode6.3.0/) [The Unicode Standard, Version 6.3.0](https://www.unicode.org/versions/Unicode6.3.0/)
[!INCLUDE[net_v461](~/includes/net-v461-md.md)] [The Unicode Standard, Version 6.3.0](https://www.unicode.org/versions/Unicode6.3.0/) [The Unicode Standard, Version 6.3.0](https://www.unicode.org/versions/Unicode6.3.0/)
[!INCLUDE[net_v462](~/includes/net-v462-md.md)] [The Unicode Standard, Version 8.0.0](https://www.unicode.org/versions/Unicode8.0.0/) [The Unicode Standard, Version 8.0.0](https://www.unicode.org/versions/Unicode8.0.0/)

Jede Version des Unicode-Standards enthält Informationen zu Änderungen an der Datenbank der Unicode-Zeichen, seit der letzten Version.Each version of the Unicode standard includes information on changes to the Unicode character database since the previous version. Die Datenbank der Unicode-Zeichen wird verwendet, durch die CharUnicodeInfo Klasse für die Kategorisierung von Zeichen.The Unicode character database is used by the CharUnicodeInfo class for categorizing characters.

Methoden

GetDecimalDigitValue(Char) GetDecimalDigitValue(Char) GetDecimalDigitValue(Char) GetDecimalDigitValue(Char)

Ruft den Dezimalziffernwert des angegebenen numerischen Zeichens ab.Gets the decimal digit value of the specified numeric character.

GetDecimalDigitValue(String, Int32) GetDecimalDigitValue(String, Int32) GetDecimalDigitValue(String, Int32) GetDecimalDigitValue(String, Int32)

Ruft den Dezimalziffernwert des numerischen Zeichens am angegebenen Index der angegebenen Zeichenfolge ab.Gets the decimal digit value of the numeric character at the specified index of the specified string.

GetDigitValue(Char) GetDigitValue(Char) GetDigitValue(Char) GetDigitValue(Char)

Ruft den Ziffernwert des angegebenen numerischen Zeichens ab.Gets the digit value of the specified numeric character.

GetDigitValue(String, Int32) GetDigitValue(String, Int32) GetDigitValue(String, Int32) GetDigitValue(String, Int32)

Ruft den Ziffernwert des numerischen Zeichens am angegebenen Index der angegebenen Zeichenfolge ab.Gets the digit value of the numeric character at the specified index of the specified string.

GetNumericValue(Char) GetNumericValue(Char) GetNumericValue(Char) GetNumericValue(Char)

Ruft den dem angegebenen Zeichen zugeordneten numerischen Wert ab.Gets the numeric value associated with the specified character.

GetNumericValue(String, Int32) GetNumericValue(String, Int32) GetNumericValue(String, Int32) GetNumericValue(String, Int32)

Ruft den dem Zeichen am angegebenen Index der angegebenen Zeichenfolge zugeordneten numerischen Wert ab.Gets the numeric value associated with the character at the specified index of the specified string.

GetUnicodeCategory(Char) GetUnicodeCategory(Char) GetUnicodeCategory(Char) GetUnicodeCategory(Char)

Ruft die Unicode-Kategorie des angegebenen Zeichens ab.Gets the Unicode category of the specified character.

GetUnicodeCategory(Int32) GetUnicodeCategory(Int32) GetUnicodeCategory(Int32) GetUnicodeCategory(Int32)
GetUnicodeCategory(String, Int32) GetUnicodeCategory(String, Int32) GetUnicodeCategory(String, Int32) GetUnicodeCategory(String, Int32)

Ruft die Unicode-Kategorie des Zeichens am angegebenen Index der angegebenen Zeichenfolge ab.Gets the Unicode category of the character at the specified index of the specified string.

Gilt für:

Siehe auch