Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All

UnicodeCategory Enumeration

Defines the Unicode category of a character.

Namespace:  System.Globalization
Assemblies:   System.Globalization (in System.Globalization.dll)
  mscorlib (in mscorlib.dll)

public enum UnicodeCategory

Member nameDescription
Supported by the XNA FrameworkSupported by Portable Class LibraryClosePunctuationClosing character of one of the paired punctuation marks, such as parentheses, square brackets, and braces. Signified by the Unicode designation "Pe" (punctuation, close). The value is 21.
Supported by the XNA FrameworkSupported by Portable Class LibraryConnectorPunctuationConnector punctuation character that connects two characters. Signified by the Unicode designation "Pc" (punctuation, connector). The value is 18.
Supported by the XNA FrameworkSupported by Portable Class LibraryControlControl code character, with a Unicode value of U+007F or in the range U+0000 through U+001F or U+0080 through U+009F. Signified by the Unicode designation "Cc" (other, control). The value is 14.
Supported by the XNA FrameworkSupported by Portable Class LibraryCurrencySymbolCurrency symbol character. Signified by the Unicode designation "Sc" (symbol, currency). The value is 26.
Supported by the XNA FrameworkSupported by Portable Class LibraryDashPunctuationDash or hyphen character. Signified by the Unicode designation "Pd" (punctuation, dash). The value is 19.
Supported by the XNA FrameworkSupported by Portable Class LibraryDecimalDigitNumberDecimal digit character, that is, a character in the range 0 through 9. Signified by the Unicode designation "Nd" (number, decimal digit). The value is 8.
Supported by the XNA FrameworkSupported by Portable Class LibraryEnclosingMarkEnclosing mark character, which is a nonspacing combining character that surrounds all previous characters up to and including a base character. Signified by the Unicode designation "Me" (mark, enclosing). The value is 7.
Supported by the XNA FrameworkSupported by Portable Class LibraryFinalQuotePunctuationClosing or final quotation mark character. Signified by the Unicode designation "Pf" (punctuation, final quote). The value is 23.
Supported by the XNA FrameworkSupported by Portable Class LibraryFormatFormat character that affects the layout of text or the operation of text processes, but is not normally rendered. Signified by the Unicode designation "Cf" (other, format). The value is 15.
Supported by the XNA FrameworkSupported by Portable Class LibraryInitialQuotePunctuationOpening or initial quotation mark character. Signified by the Unicode designation "Pi" (punctuation, initial quote). The value is 22.
Supported by the XNA FrameworkSupported by Portable Class LibraryLetterNumberNumber represented by a letter, instead of a decimal digit, for example, the Roman numeral for five, which is "V". The indicator is signified by the Unicode designation "Nl" (number, letter). The value is 9.
Supported by the XNA FrameworkSupported by Portable Class LibraryLineSeparatorCharacter that is used to separate lines of text. Signified by the Unicode designation "Zl" (separator, line). The value is 12.
Supported by the XNA FrameworkSupported by Portable Class LibraryLowercaseLetterLowercase letter. Signified by the Unicode designation "Ll" (letter, lowercase). The value is 1.
Supported by the XNA FrameworkSupported by Portable Class LibraryMathSymbolMathematical symbol character, such as "+" or "= ". Signified by the Unicode designation "Sm" (symbol, math). The value is 25.
Supported by the XNA FrameworkSupported by Portable Class LibraryModifierLetterModifier letter character, which is free-standing spacing character that indicates modifications of a preceding letter. Signified by the Unicode designation "Lm" (letter, modifier). The value is 3.
Supported by the XNA FrameworkSupported by Portable Class LibraryModifierSymbolModifier symbol character, which indicates modifications of surrounding characters. For example, the fraction slash indicates that the number to the left is the numerator and the number to the right is the denominator. The indicator is signified by the Unicode designation "Sk" (symbol, modifier). The value is 27.
Supported by the XNA FrameworkSupported by Portable Class LibraryNonSpacingMarkNonspacing character that indicates modifications of a base character. Signified by the Unicode designation "Mn" (mark, nonspacing). The value is 5.
Supported by the XNA FrameworkSupported by Portable Class LibraryOpenPunctuationOpening character of one of the paired punctuation marks, such as parentheses, square brackets, and braces. Signified by the Unicode designation "Ps" (punctuation, open). The value is 20.
Supported by the XNA FrameworkSupported by Portable Class LibraryOtherLetterLetter that is not an uppercase letter, a lowercase letter, a titlecase letter, or a modifier letter. Signified by the Unicode designation "Lo" (letter, other). The value is 4.
Supported by the XNA FrameworkSupported by Portable Class LibraryOtherNotAssignedCharacter that is not assigned to any Unicode category. Signified by the Unicode designation "Cn" (other, not assigned). The value is 29.
Supported by the XNA FrameworkSupported by Portable Class LibraryOtherNumberNumber that is neither a decimal digit nor a letter number, for example, the fraction 1/2. The indicator is signified by the Unicode designation "No" (number, other). The value is 10.
Supported by the XNA FrameworkSupported by Portable Class LibraryOtherPunctuationPunctuation character that is not a connector, a dash, open punctuation, close punctuation, an initial quote, or a final quote. Signified by the Unicode designation "Po" (punctuation, other). The value is 24.
Supported by the XNA FrameworkSupported by Portable Class LibraryOtherSymbolSymbol character that is not a mathematical symbol, a currency symbol or a modifier symbol. Signified by the Unicode designation "So" (symbol, other). The value is 28.
Supported by the XNA FrameworkSupported by Portable Class LibraryParagraphSeparatorCharacter used to separate paragraphs. Signified by the Unicode designation "Zp" (separator, paragraph). The value is 13.
Supported by the XNA FrameworkSupported by Portable Class LibraryPrivateUsePrivate-use character, with a Unicode value in the range U+E000 through U+F8FF. Signified by the Unicode designation "Co" (other, private use). The value is 17.
Supported by the XNA FrameworkSupported by Portable Class LibrarySpaceSeparatorSpace character, which has no glyph but is not a control or format character. Signified by the Unicode designation "Zs" (separator, space). The value is 11.
Supported by the XNA FrameworkSupported by Portable Class LibrarySpacingCombiningMarkSpacing character that indicates modifications of a base character and affects the width of the glyph for that base character. Signified by the Unicode designation "Mc" (mark, spacing combining). The value is 6.
Supported by the XNA FrameworkSupported by Portable Class LibrarySurrogateHigh surrogate or a low surrogate character. Surrogate code values are in the range U+D800 through U+DFFF. Signified by the Unicode designation "Cs" (other, surrogate). The value is 16.
Supported by the XNA FrameworkSupported by Portable Class LibraryTitlecaseLetterTitlecase letter. Signified by the Unicode designation "Lt" (letter, titlecase). The value is 2.
Supported by the XNA FrameworkSupported by Portable Class LibraryUppercaseLetterUppercase letter. Signified by the Unicode designation "Lu" (letter, uppercase). The value is 0.

A member of the UnicodeCategory enumeration is returned by the Char.GetUnicodeCategory and CharUnicodeInfo.GetUnicodeCategory methods. The UnicodeCategory enumeration is also used to support Char methods, such as IsUpper(Char). Such methods determine whether a specified character is a member of a particular Unicode general category. A Unicode general category defines the broad classification of a character, that is, designation as a type of letter, decimal digit, separator, mathematical symbol, punctuation, and so on.

This enumeration is based on The Unicode Standard, version 5.0. For more information, see the "UCD File Format" and "General Category Values" subtopics at the Unicode Character Database.

The Unicode Standard defines the following:

A surrogate pair is a coded character representation for a single abstract character that consists of a sequence of two code units, where the first unit of the pair is a high surrogate and the second is a low surrogate. A high surrogate is a Unicode code point in the range U+D800 through U+DBFF and a low surrogate is a Unicode code point in the range U+DC00 through U+DFFF.

A combining character sequence is a combination of a base character and one or more combining characters. A surrogate pair represents a base character or a combining character. A combining character is either spacing or nonspacing. A spacing combining character takes up a spacing position by itself when rendered, while a nonspacing combining character does not. Diacritics are an example of nonspacing combining characters.

A modifier letter is a free-standing spacing character that, like a combining character, indicates modifications of a preceding letter.

An enclosing mark is a nonspacing combining character that surrounds all previous characters up to and including a base character.

A format character is a character that is not normally rendered but that affects the layout of text or the operation of text processes.

The Unicode Standard defines several variations to some punctuation marks. For example, a hyphen can be one of several code values that represent a hyphen, such as U+002D (hyphen-minus) or U+00AD (soft hyphen) or U+2010 (hyphen) or U+2011 (nonbreaking hyphen). The same is true for dashes, space characters, and quotation marks.

The Unicode Standard also assigns codes to representations of decimal digits that are specific to a given script or language, for example, U+0030 (digit zero) and U+0660 (Arabic-Indic digit zero).

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0

Portable Class Library

Supported in: Portable Class Library

Supported in: Windows Phone 8.1

Supported in: Windows Phone Silverlight 8.1

Supported in: Windows Phone Silverlight 8
Show:
© 2015 Microsoft