UnicodeCategory Перечисление

Определение

Определяет категорию Юникода для символа.

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
Наследование
UnicodeCategory
Атрибуты

Поля

ClosePunctuation 21

Закрывающий символ для одного из парных знаков препинания, таких как круглые, квадратные и фигурные скобки. Принятое обозначение в Юникоде — "Pe" (punctuation, close). Значение равно 21.

ConnectorPunctuation 18

Знак препинания, являющийся соединителем двух символов. Принятое обозначение в Юникоде — "Pc" (punctuation, connector). Значение равно 18.

Control 14

Управляющий символ кода со значением в Юникоде, равным U+007F либо находящемся в диапазоне от U+0000 до U+001F или от U+0080 до U+009F. Принятое обозначение в Юникоде — "Cc" (other, control). Значение равно 14.

CurrencySymbol 26

Символ денежной единицы. Принятое обозначение в Юникоде — "Sc" (symbol, currency). Значение равно 26.

DashPunctuation 19

Знак тире или дефиса. Принятое обозначение в Юникоде — "Pd" (punctuation, dash). Значение равно 19.

DecimalDigitNumber 8

Знак десятичной цифры в диапазоне от 0 до 9. Принятое обозначение в Юникоде — "Nd" (number, decimal digit). Значение равно 8.

EnclosingMark 7

Вложенный символ — непробельный несамостоятельный знак, который окружает все предыдущие символы до базового символа включительно. Принятое обозначение в Юникоде — "Me" (mark, enclosing). Значение равно 7.

FinalQuotePunctuation 23

Закрывающий или заключительный знак кавычки. Принятое обозначение в Юникоде — "Pf" (punctuation, final quote). Значение равно 23.

Format 15

Символ форматирования, который влияет на расположение текста или на операции по обработке текста, но обычно не отображается. Принятое обозначение в Юникоде — "Cf" (other, format). Значение равно 15.

InitialQuotePunctuation 22

Открывающий или начальный знак кавычки. Принятое обозначение в Юникоде — "Pi" (punctuation, initial quote). Значение равно 22.

LetterNumber 9

Число, представленное буквой вместо десятичной цифры, например обозначение римской цифры пять — V. Принятое обозначение в Юникоде — "Nl" (number, letter). Значение равно 9.

LineSeparator 12

Символ, используемый для разделения строк текста. Принятое обозначение в Юникоде — "Zl" (separator, line). Значение равно 12.

LowercaseLetter 1

Строчная буква. Принятое обозначение в Юникоде — "Ll" (letter, lowercase). Значение равно 1.

MathSymbol 25

Математические символы, например "+" или "=". Принятое обозначение в Юникоде — "Sm" (symbol, math). Значение равно 25.

ModifierLetter 3

Символ буквы модификатора, представляющий собой отдельно стоящий знак ненулевой ширины, указывающий на изменение предшествующей буквы. Принятое обозначение в Юникоде — "Lm" (letter, modifier). Значение равно 3.

ModifierSymbol 27

Символ модификатора, который указывает на изменения окружающих его символов. Например, дробная черта указывает, что число слева является числителем, а число справа — знаменателем. Индикатор отмечается специальным знаком Юникода "Sk" (symbol, modifier). Значение равно 27.

NonSpacingMark 5

Непробельный символ, указывающий на изменения базового символа. Принятое обозначение в Юникоде — "Mn" (mark, nonspacing). Значение равно 5.

OpenPunctuation 20

Открывающий символ для одного из парных знаков препинания, таких как круглые, квадратные и фигурные скобки. Принятое обозначение в Юникоде — "Ps" (punctuation, open). Значение равно 20.

OtherLetter 4

Буква, не являющаяся прописной, строчной, буквой модификатора и не находящаяся в регистре заголовка. Принятое обозначение в Юникоде — "Lo" (letter, other). Значение равно 4.

OtherNotAssigned 29

Символ, не относящийся ни к одной из категорий Юникода. Принятое обозначение в Юникоде — "Cn" (other, not assigned). Значение равно 29.

OtherNumber 10

Число, не являющееся ни десятичной цифрой, ни буквенной цифрой, например дробь 1/2. Принятое в Юникоде обозначение индикатора — "No" (number, other). Значение равно 10.

OtherPunctuation 24

Знак препинания, который не является соединителем, тире, открывающим или закрывающим знаком препинания, начальной или заключительной кавычкой. Принятое обозначение в Юникоде — "Po" (punctuation, other). Значение равно 24.

OtherSymbol 28

Символ, который не является математическим символом, символом денежной единицы или символом модификатора. Принятое обозначение в Юникоде — "So" (symbol, other). Значение равно 28.

ParagraphSeparator 13

Символ, используемый для разделения абзацев. Принятое обозначение в Юникоде — "Zp" (separator, paragraph). Значение равно 13.

PrivateUse 17

Символ для личного использования, значение которого в Юникоде находится в диапазоне от U+E000 до U+F8FF. Принятое обозначение в Юникоде — "Co" (other, private use). Значение равно 17.

SpaceSeparator 11

Символ пробела, не имеющий глифа, но не являющийся управляющим символом или символом форматирования. Принятое обозначение в Юникоде — "Zs" (separator, space). Значение равно 11.

SpacingCombiningMark 6

Символ ненулевой ширины, который указывает на изменения базового символа и влияет на ширину его глифа. Принятое обозначение в Юникоде — "Mc" (mark, spacing combining). Значение равно 6.

Surrogate 16

Старший или младший символ-заместитель. Значения кодов символов-заместителей находятся в диапазоне от U+D800 до U+DFFF. Принятое обозначение в Юникоде — "Cs" (other, surrogate). Значение равно 16.

TitlecaseLetter 2

Буква регистра заголовка. Принятое обозначение в Юникоде — "Lt" (letter, titlecase). Значение равно 2.

UppercaseLetter 0

Прописная буква. Принятое обозначение в Юникоде — "Lu" (letter, uppercase). Значение равно 0.

Примеры

В следующем примере отображаются символы и соответствующие кодовые точки для символов в категории Упперкаселеттер. Можно изменить пример, чтобы отобразить буквы в любой другой категории, заменив Упперкаселеттер на интересующую категорию в назначении category переменной. Обратите внимание, что выходные данные некоторых категорий могут быть обширными.

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

Комментарии

Член UnicodeCategory перечисления возвращается Char.GetUnicodeCategory CharUnicodeInfo.GetUnicodeCategory методами и. UnicodeCategoryПеречисление также используется для поддержки Char методов, таких как IsUpper(Char) . Такие методы определяют, является ли указанный символ членом определенной общей категории Юникода. Общая категория Юникода определяет общую классификацию символа, то есть обозначение в виде типа буквы, десятичной цифры, разделителя, математического символа, пунктуации и т. д.

Это перечисление основано на стандарте Юникода версии 5,0. Дополнительные сведения см. в подразделах "Формат файлов UCD" и "Значения общих категорий" в разделе База данных символов Юникода.

Стандарт Unicode определяет следующее:

Суррогатная пара представляет собой закодированное символьное представление для одного абстрактного символа, состоящего из последовательности двух единиц кода, где первая единица пары является старшим символом-заместителем, а второй — младшим символом-заместителем. Старший суррогат — это кодовая точка Юникода в диапазоне U + D800 до U + DBFF, а младший символ-заместитель — это кодовая точка Юникода в диапазоне от U + DC00 до U + DFFF.

Последовательность несамостоятельных символов представляет собой сочетание базового символа и одного или нескольких Объединенных символов. Суррогатная пара представляет базовый символ или присоединяемый символ. Несамостоятельный символ — это либо пробел, либо пробел. Комбинированный символ занимает место по отдельности при подготовке к просмотру, а несамостоятельный символ — нет. Диакритические знаки — это пример несамостоятельных символов.

Буква-модификатора представляет собой свободный символ, который, как и несамостоятельный символ, указывает на изменения предшествующей буквы.

Заключенная в кавычки знак — это несамостоятельный символ, который окружает все предыдущие символы до базового символа включительно.

Символ форматирования — это символ, который обычно не отображается, но влияет на макет текста или на работу с текстовыми процессами.

Стандарт Unicode определяет несколько вариантов для некоторых знаков препинания. Например, дефис может быть одним из нескольких значений кода, представляющих дефис, например U + 002D (дефис-минус) или U + 00AD (мягкий дефис) или u + 2010 (дефис) или U + 2011 (неразрывный дефис). Это справедливо и для тире, пробелов и кавычек.

Стандарт Unicode также назначает коды представлениям десятичных цифр, характерных для конкретного скрипта или языка, например U + 0030 (цифра 0) и U + 0660 (Арабский — индийская цифра 0).

Применяется к

См. также раздел