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.

Примеры

В следующем примере отображаются символы и соответствующие кодовые точки для символов в категории UppercaseLetter. Вы можете изменить пример, чтобы отобразить буквы в любой другой категории, заменив UppercaseLetter категорией интересующей вас в назначении переменной 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 возвращается методами и CharUnicodeInfo.GetUnicodeCategory методамиChar.GetUnicodeCategory. Перечисление UnicodeCategory также используется для поддержки Char методов, таких как IsUpper(Char). Такие методы определяют, является ли указанный символ членом определенной общей категории Юникода. Общая категория Юникода определяет широкую классификацию символа, то есть обозначение как тип буквы, десятичной цифры, разделитель, математический символ, пунктуация и т. д.

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

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

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

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

Буква-модификатор — это символ свободного интервала, который, как символ объединения, указывает на изменения предыдущей буквы.

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

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

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

Стандарт Юникода также присваивает коды представлениям десятичных цифр, относящихся к заданному скрипту или языку, например U+0030 (ноль цифр) и U+0660 (нулевые цифры на арабском языке).

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

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