CharUnicodeInfo 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
유니코드 문자에 대한 정보를 검색합니다. 이 클래스는 상속될 수 없습니다.
public ref class CharUnicodeInfo abstract sealed
public ref class CharUnicodeInfo sealed
public static class CharUnicodeInfo
public sealed class CharUnicodeInfo
type CharUnicodeInfo = class
Public Class CharUnicodeInfo
Public NotInheritable Class CharUnicodeInfo
- 상속
-
CharUnicodeInfo
예제
다음 코드 예제에서는 각 메서드에서 서로 다른 형식의 문자에 대해 반환된 값을 보여 있습니다.
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 Γ -1 -1 -1 UppercaseLetter
U+0039 DIGIT NINE 9 9 9 9 DecimalDigitNumber
U+00B2 SUPERSCRIPT TWO ² 2 2 -1 OtherNumber
U+00BC VULGAR FRACTION ONE QUARTER ¼ 0.25 -1 -1 OtherNumber
U+0BEF TAMIL DIGIT NINE ௯ 9 9 9 DecimalDigitNumber
U+0BF0 TAMIL NUMBER TEN ௰ 10 -1 -1 OtherNumber
U+0F33 TIBETAN DIGIT HALF ZERO ༳ -0.5 -1 -1 OtherNumber
U+2788 CIRCLED SANS-SERIF DIGIT NINE ➈ 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 Γ -1 -1 -1 UppercaseLetter
U+0039 DIGIT NINE 9 9 9 9 DecimalDigitNumber
U+00B2 SUPERSCRIPT TWO ² 2 2 -1 OtherNumber
U+00BC VULGAR FRACTION ONE QUARTER ¼ 0.25 -1 -1 OtherNumber
U+0BEF TAMIL DIGIT NINE ௯ 9 9 9 DecimalDigitNumber
U+0BF0 TAMIL NUMBER TEN ௰ 10 -1 -1 OtherNumber
U+0F33 TIBETAN DIGIT HALF ZERO ༳ -0.5 -1 -1 OtherNumber
U+2788 CIRCLED SANS-SERIF DIGIT NINE ➈ 9 9 -1 OtherNumber
*/
Imports System.Globalization
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
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
End Class
'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 Γ -1 -1 -1 UppercaseLetter
'U+0039 DIGIT NINE 9 9 9 9 DecimalDigitNumber
'U+00B2 SUPERSCRIPT TWO ² 2 2 -1 OtherNumber
'U+00BC VULGAR FRACTION ONE QUARTER ¼ 0.25 -1 -1 OtherNumber
'U+0BEF TAMIL DIGIT NINE ௯ 9 9 9 DecimalDigitNumber
'U+0BF0 TAMIL NUMBER TEN ௰ 10 -1 -1 OtherNumber
'U+0F33 TIBETAN DIGIT HALF ZERO ༳ -0.5 -1 -1 OtherNumber
'U+2788 CIRCLED SANS-SERIF DIGIT NINE ➈ 9 9 -1 OtherNumber
설명
유니코드 표준은 여러 유니코드 문자 범주를 정의합니다. 예를 들어 문자는 대문자, 소문자, 10진수 숫자, 문자 번호, 단락 구분 기호, 수학 기호 또는 통화 기호로 분류될 수 있습니다. 애플리케이션이 구문 분석 또는 정규식을 사용 하 여 부분 문자열을 추출 하는 등의 문자열 기반 작업을 관리 하기 위해 문자 범주를 사용할 수 있습니다. 열거형은 UnicodeCategory 가능한 문자 범주를 정의합니다.
클래스를 CharUnicodeInfo 사용하여 특정 문자의 UnicodeCategory 값을 가져옵니다. 클래스는 CharUnicodeInfo 다음 유니코드 문자 값을 반환하는 메서드를 정의합니다.
문자 또는 서로게이트 쌍이 속한 특정 범주입니다. 반환된 값은 열거형의 UnicodeCategory 멤버입니다.
숫자 값입니다. 분수, 아래 첨자, 위 첨자, 로마 숫자, 통화 숫자, 둘러싸인 숫자 및 스크립트별 숫자를 포함한 숫자 문자에만 적용됩니다.
숫자 값입니다. 번호 매기기 시스템의 정수를 나타내기 위해 다른 숫자 문자와 결합할 수 있는 숫자 문자에 적용됩니다.
10진수 값입니다. 10진수(기본 10) 시스템의 10진수를 나타내는 문자에만 적용됩니다. 10진수는 0부터 9까지의 10자리 숫자 중 하나일 수 있습니다. 이러한 문자는 범주의 멤버입니다 UnicodeCategory.DecimalDigitNumber .
또한 CharUnicodeInfo 클래스는 문자 분류를 사용하는 여러 다른 .NET 형식 및 메서드에서 내부적으로 사용됩니다. 여기에는 다음이 포함됩니다.
문자열의 StringInfo 단일 문자 대신 텍스트 요소로 작동하는 클래스입니다.
문자 또는 서로게이트 쌍이 Char.GetUnicodeCategory 속한 범주를 결정하는 메서드의 오버로드입니다.
애플리케이션에서이 클래스를 사용 하는 경우 유지 염두에서 다음 프로그래밍 사용 시 고려 사항은 Char 형식입니다. 형식을 사용하기 어려울 수 있으며 문자열은 일반적으로 언어 콘텐츠를 나타내는 데 선호됩니다.
개체가 Char 항상 단일 문자에 해당하는 것은 아닙니다. 형식은 Char 단일 16비트 값을 나타내지만 일부 문자(예: 그래프 클러스터 및 서로게이트 쌍)는 둘 이상의 UTF-16 코드 단위로 구성됩니다. 자세한 내용은 클래스의 "Char 개체 및 유니코드 문자"를 String 참조하세요.
"문자"의 개념도 유연합니다. 문자는 종종 문자 모양으로 생각되지만 많은 문자 모양에는 여러 코드 포인트가 필요합니다. 예를 들어 ä는 두 개의 코드 포인트("a" + U+0308, 결합 diaeresis) 또는 단일 코드 포인트("ä" 또는 U+00A4)로 나타낼 수 있습니다. 일부 언어에는 여러 코드 포인트가 필요한 문자, 문자 및 문자 모양이 많기 때문에 언어 콘텐츠 표현이 혼동될 수 있습니다. 예를 들어 에는 (U+03B0, Dialytika 및 tonos가 있는 그리스어 작은 문자 업실론)이 있지만 동등한 대문자는 없습니다. 이러한 값을 대문자로 지정하면 원래 값만 검색됩니다.
호출자 참고
인식된 문자 및 해당 문자가 속한 특정 범주는 유니코드 표준에 의해 정의되며 유니코드 표준의 한 버전에서 다른 버전으로 변경할 수 있습니다. 특정 버전의 .NET Framework 문자 분류는 .NET Framework 실행 중인 기본 운영 체제에 관계없이 단일 버전의 유니코드 표준을 기반으로 합니다. 다음 표에는 .NET Framework 4 이후의 .NET Framework 버전과 문자를 분류하는 데 사용되는 유니코드 표준 버전이 나와 있습니다.
.NET Framework 버전 | 유니코드 표준 버전 |
---|---|
.NET Framework 4 | 5.0.0 |
.NET Framework 4.5 | 5.0.0 |
.NET Framework 4.5.1 | 5.0.0 |
.NET Framework 4.5.2 | 5.0.0 |
.NET Framework 4.6 | 6.3.0 |
.NET Framework 4.6.1 | 6.3.0 |
.NET Framework 4.6.2 | 8.0.0 |
유니코드 표준의 각 버전에는 이전 버전 이후의 유니코드 문자 데이터베이스 변경에 대한 정보가 포함됩니다. 유니코드 문자 데이터베이스는 클래스에서 CharUnicodeInfo 문자를 분류하는 데 사용됩니다.
메서드
GetDecimalDigitValue(Char) |
지정된 숫자 문자의 10진 자릿수 값을 가져옵니다. |
GetDecimalDigitValue(String, Int32) |
지정된 문자열의 지정된 인덱스에 있는 숫자 문자의 10진 자릿수 값을 가져옵니다. |
GetDigitValue(Char) |
지정된 숫자 문자의 자릿수 값을 가져옵니다. |
GetDigitValue(String, Int32) |
지정된 문자열의 지정된 인덱스에 있는 숫자 문자의 자릿수 값을 가져옵니다. |
GetNumericValue(Char) |
지정된 문자와 연결된 숫자 값을 가져옵니다. |
GetNumericValue(String, Int32) |
지정된 문자열의 지정된 인덱스에 있는 문자와 연결된 숫자 값을 가져옵니다. |
GetUnicodeCategory(Char) |
지정된 문자의 유니코드 범주를 가져옵니다. |
GetUnicodeCategory(Int32) |
지정된 문자의 유니코드 범주를 가져옵니다. |
GetUnicodeCategory(String, Int32) |
지정된 문자열의 지정된 인덱스에 있는 문자의 유니코드 범주를 가져옵니다. |
적용 대상
추가 정보
.NET