Bagikan melalui


UnicodeCategory Enum

Definisi

Menentukan kategori Unicode karakter.

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
Warisan
UnicodeCategory
Atribut

Bidang

Nama Nilai Deskripsi
UppercaseLetter 0

Huruf besar. Ditandatangani oleh sebutan Unicode "Lu" (huruf, huruf besar). Nilainya adalah 0.

LowercaseLetter 1

Huruf kecil. Ditandatangani oleh sebutan Unicode "Ll" (huruf, huruf kecil). Nilainya adalah 1.

TitlecaseLetter 2

Huruf judul. Ditandatangani oleh sebutan Unicode "Lt" (huruf, judul). Nilainya adalah 2.

ModifierLetter 3

Karakter huruf pengubah, yang merupakan karakter penspasian berdiri bebas yang menunjukkan modifikasi huruf sebelumnya. Ditandatangani oleh sebutan Unicode "Lm" (huruf, pengubah). Nilainya adalah 3.

OtherLetter 4

Huruf yang bukan huruf besar, huruf kecil, huruf judul, atau huruf pengubah. Ditandatangani oleh penandaan Unicode "Lo" (huruf, lainnya). Nilainya adalah 4.

NonSpacingMark 5

Karakter nonspacing yang menunjukkan modifikasi karakter dasar. Ditandatangani oleh penandaan Unicode "Mn" (tandai, nonspacing). Nilainya adalah 5.

SpacingCombiningMark 6

Karakter spasi yang menunjukkan modifikasi karakter dasar dan memengaruhi lebar glyph untuk karakter dasar tersebut. Ditandatangani oleh penunjukan Unicode "Mc" (tandai, perpaduan spasi). Nilainya adalah 6.

EnclosingMark 7

Menutupi karakter tanda, yang merupakan karakter gabungan nonspacing yang mengelilingi semua karakter sebelumnya hingga dan menyertakan karakter dasar. Ditandatangani oleh penandaan Unicode "Me" (tandai, tertutup). Nilainya adalah 7.

DecimalDigitNumber 8

Karakter digit desimal, yaitu karakter yang mewakili bilangan bulat dalam rentang 0 hingga 9. Ditandatangani oleh sebutan Unicode "Nd" (angka, digit desimal). Nilainya adalah 8.

LetterNumber 9

Angka yang diwakili oleh huruf, bukan digit desimal, misalnya, angka Romawi untuk lima, yaitu "V". Indikator ditandatangani oleh sebutan Unicode "Nl" (angka, huruf). Nilainya adalah 9.

OtherNumber 10

Angka yang bukan digit desimal atau angka huruf, misalnya, pecahan 1/2. Indikator ditandatangani oleh penunjukan Unicode "Tidak" (angka, lainnya). Nilainya adalah 10.

SpaceSeparator 11

Karakter spasi, yang tidak memiliki glyph tetapi bukan karakter kontrol atau format. Ditandatangani oleh sebutan Unicode "Zs" (pemisah, ruang). Nilainya adalah 11.

LineSeparator 12

Karakter yang digunakan untuk memisahkan baris teks. Ditandatangani oleh sebutan Unicode "Zl" (pemisah, baris). Nilainya adalah 12.

ParagraphSeparator 13

Karakter yang digunakan untuk memisahkan paragraf. Ditandatangani oleh sebutan Unicode "Zp" (pemisah, paragraf). Nilainya adalah 13.

Control 14

Karakter kode kontrol, dengan nilai Unicode U+007F atau dalam rentang U+0000 hingga U+001F atau U+0080 hingga U+009F. Ditandatangani oleh penandaan Unicode "Cc" (lainnya, kontrol). Nilainya adalah 14.

Format 15

Format karakter yang memengaruhi tata letak teks atau operasi proses teks, tetapi biasanya tidak dirender. Ditandatangani oleh sebutan Unicode "Cf" (lainnya, format). Nilainya adalah 15.

Surrogate 16

Pengganti tinggi atau karakter pengganti rendah. Nilai kode pengganti berada dalam rentang U+D800 hingga U+DFFF. Ditandatangani oleh penandaan Unicode "Cs" (lainnya, pengganti). Nilainya adalah 16.

PrivateUse 17

Karakter penggunaan privat, dengan nilai Unicode dalam rentang U+E000 hingga U+F8FF. Ditandatangani oleh penandaan Unicode "Co" (lainnya, penggunaan privat). Nilainya adalah 17.

ConnectorPunctuation 18

Karakter tanda baca konektor yang menghubungkan dua karakter. Ditandatangani oleh sebutan Unicode "Pc" (tanda baca, konektor). Nilainya adalah 18.

DashPunctuation 19

Karakter tanda hubung atau tanda hubung. Ditandatangani oleh sebutan Unicode "Pd" (tanda baca, tanda hubung). Nilainya adalah 19.

OpenPunctuation 20

Karakter pembuka dari salah satu tanda baca berpasangan, seperti tanda kurung, tanda kurung siku, dan tanda kurung. Ditandatangani oleh sebutan Unicode "Ps" (tanda baca, terbuka). Nilainya adalah 20.

ClosePunctuation 21

Karakter penutup dari salah satu tanda baca berpasangan, seperti tanda kurung, kurung siku, dan kurung siku. Ditandatangani oleh sebutan Unicode "Pe" (tanda baca, tutup). Nilainya adalah 21.

InitialQuotePunctuation 22

Karakter tanda kutip pembuka atau awal. Ditandatangani oleh sebutan Unicode "Pi" (tanda baca, kutipan awal). Nilainya adalah 22.

FinalQuotePunctuation 23

Karakter tanda kutip penutup atau akhir. Ditandatangani oleh sebutan Unicode "Pf" (tanda baca, kutipan akhir). Nilainya adalah 23.

OtherPunctuation 24

Karakter tanda baca yang bukan konektor, tanda hubung, tanda baca terbuka, tanda baca penutup, tanda kutip awal, atau kutipan akhir. Ditandatangani oleh sebutan Unicode "Po" (tanda baca, lainnya). Nilainya adalah 24.

MathSymbol 25

Karakter simbol matematika, seperti "+" atau "= ". Ditandatangani oleh sebutan Unicode "Sm" (simbol, matematika). Nilainya adalah 25.

CurrencySymbol 26

Karakter simbol mata uang. Ditandatangani oleh penunjukan Unicode "Sc" (simbol, mata uang). Nilainya adalah 26.

ModifierSymbol 27

Karakter simbol pengubah, yang menunjukkan modifikasi karakter di sekitarnya. Misalnya, garis miring pecahan menunjukkan bahwa angka di sebelah kiri adalah pembilang dan angka di sebelah kanan adalah penyebut. Indikator ditandatangani oleh sebutan Unicode "Sk" (simbol, pengubah). Nilainya adalah 27.

OtherSymbol 28

Karakter simbol yang bukan simbol matematika, simbol mata uang, atau simbol pengubah. Ditandatangani oleh penunjukan Unicode "Jadi" (simbol, lainnya). Nilainya adalah 28.

OtherNotAssigned 29

Karakter yang tidak ditetapkan ke kategori Unicode apa pun. Ditandatangani oleh sebutan Unicode "Cn" (lainnya, tidak ditetapkan). Nilainya adalah 29.

Contoh

Contoh berikut menampilkan karakter dan titik kode terkait untuk karakter dalam kategori UppercaseLetter. Anda dapat mengubah contoh untuk menampilkan huruf dalam kategori lain dengan mengganti UppercaseLetter dengan kategori yang menarik bagi Anda dalam penugasan ke category variabel. Perhatikan bahwa output untuk beberapa kategori dapat ekstensif.

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

Keterangan

Anggota UnicodeCategory enumerasi dikembalikan oleh Char.GetUnicodeCategory metode dan CharUnicodeInfo.GetUnicodeCategory . Enumerasi UnicodeCategory juga digunakan untuk mendukung Char metode, seperti IsUpper(Char). Metode tersebut menentukan apakah karakter yang ditentukan adalah anggota kategori umum Unicode tertentu. Kategori umum Unicode mendefinisikan klasifikasi luas karakter, yaitu, penunjukan sebagai jenis huruf, digit desimal, pemisah, simbol matematika, tanda baca, dan sebagainya.

Enumerasi ini didasarkan pada Unicode Standard, versi 5.0. Untuk informasi selengkapnya, lihat subtopik "Format File UCD" dan "Nilai Kategori Umum" di Database Karakter Unicode.

Standar Unicode mendefinisikan hal berikut:

Pasangan pengganti adalah representasi karakter berkode untuk satu karakter abstrak yang terdiri dari urutan dua unit kode, di mana unit pertama pasangan adalah pengganti tinggi dan yang kedua adalah pengganti rendah. Pengganti tinggi adalah titik kode Unicode dalam rentang U+D800 hingga U+DBFF dan pengganti rendah adalah titik kode Unicode dalam rentang U+DC00 hingga U+DFFF.

Urutan karakter yang menggabungkan adalah kombinasi karakter dasar dan satu atau beberapa karakter yang menggabungkan. Pasangan pengganti mewakili karakter dasar atau karakter gabungan. Karakter penggambungan adalah penspasian atau nonspacing. Karakter gabungan spasi mengambil posisi penspasian dengan sendirinya saat dirender, sementara karakter gabungan nonspacing tidak. Diakritik adalah contoh nonspacing yang menggabungkan karakter.

Huruf pengubah adalah karakter penspasian berdiri bebas yang, seperti karakter gabungan, menunjukkan modifikasi huruf sebelumnya.

Tanda penutup adalah karakter gabungan nonspacing yang mengelilingi semua karakter sebelumnya hingga dan menyertakan karakter dasar.

Karakter format adalah karakter yang biasanya tidak dirender tetapi memengaruhi tata letak teks atau operasi proses teks.

Standar Unicode mendefinisikan beberapa variasi ke beberapa tanda baca. Misalnya, tanda hubung dapat berupa salah satu dari beberapa nilai kode yang mewakili tanda hubung, seperti U+002D (tanda hubung-minus) atau U+00AD (tanda hubung lunak) atau U+2010 (tanda hubung) atau U+2011 (tanda hubung tidak terpecahkan). Hal yang sama berlaku untuk tanda hubung, karakter spasi, dan tanda kutip.

Standar Unicode juga menetapkan kode ke representasi digit desimal yang khusus untuk skrip atau bahasa tertentu, misalnya, U+0030 (digit nol) dan U+0660 (Arabic-Indic digit nol).

Berlaku untuk

Lihat juga