이 문서는 기계 번역을 이용하여 번역되었습니다. 문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문

StringInfo.ParseCombiningCharacters 메서드 (String)

 

게시 날짜: 2016년 11월

각 기본 문자, 상위 서로게이트 또는 지정된 된 문자열 내에서 제어 문자를 반환합니다.

네임스페이스:   System.Globalization
어셈블리:  mscorlib(mscorlib.dll에 있음)

public static int[] ParseCombiningCharacters(
	string str
)

매개 변수

str
Type: System.String

검색할 문자열입니다.

반환 값

Type: System.Int32[]

각 기본 문자, 상위 서로게이트 또는 지정된 된 문자열 내에서 제어 문자의 0부터 시작 하는 인덱스를 포함 하는 정수의 배열입니다.

Exception Condition
ArgumentNullException

strnull인 경우

Unicode Standard 두 코드 단위의 여기서 쌍의 첫 번째 단위 high surrogate 인지 하 고 두 번째 하위 서로게이트는 시퀀스를 구성 하는 단일 추상 문자에 대 한 코드 문자 표현으로 서로게이트 쌍을 정의 합니다. 상위 서로게이트 유니코드 코드 포인트 U + d 800부터 U + DBFF 까지의 범위에 이며 하위 서로게이트 유니코드 코드 포인트 U + d c 00부터 U + DFFF 까지의 범위에 있습니다.

제어 문자는 문자는 유니코드 값이 U + 007F 또는 U + 0000에서 U + 001F 또는 U + 0080 ~ U + 009f 까지의 범위에.

.NET Framework의 문자 소 즉, 단일 문자로 표시 되는 텍스트 단위로 텍스트 요소를 정의 합니다. 텍스트 요소를, 사용할 수 있습니다 기본 문자는 서로게이트 쌍을 조합 문자 시퀀스입니다. Unicode Standard 정의 조합 문자 시퀀스의 기본 문자 및 하나 이상의 결합 문자 조합으로 합니다. 서로게이트 쌍은 기본 문자나 조합 문자를 나타낼 수 있습니다.

조합 문자 시퀀스에 유효 하지 않으면 해당 시퀀스의 모든 조합 문자도 반환 됩니다.

결과 배열의 각 인덱스는 시작 텍스트 요소, 즉, 기본 문자 또는 상위 서로게이트의 인덱스입니다.

연속 된 인덱스 간의 차이 따라 각 요소의 길이 쉽게 계산할 수 있습니다. 배열의 길이 문자열의 길이 보다 작거나은 항상입니다. 이 메서드는 인덱스 0, 2 및 4를 반환 하는 예를 들어, "\u4f00\u302a\ud800\udc00\u4f01" 문자열을 지정 합니다.

.NET Framework 버전 2.0 부터는 SubstringByTextElements 메서드 및 LengthInTextElements 속성에서 제공 하는 기능을 사용 하기 쉬운 구현을 제공는 ParseCombiningCharacters 메서드.

다음 코드 예제에서는 호출 된 ParseCombiningCharacters 메서드. 이 코드 예제는 제공에 대 한 보다 큰 예제의 일부는 StringInfo 클래스입니다.

using System;
using System.Text;
using System.Globalization;

public sealed class App {
   static void Main() {
      // The string below contains combining characters.
      String s = "a\u0304\u0308bc\u0327";

      // Show each 'character' in the string.
      EnumTextElements(s);

      // Show the index in the string where each 'character' starts.
      EnumTextElementIndexes(s);
   }

   // Show how to enumerate each real character (honoring surrogates) in a string.
   static void EnumTextElements(String s) {
      // This StringBuilder holds the output results.
      StringBuilder sb = new StringBuilder();

      // Use the enumerator returned from GetTextElementEnumerator 
      // method to examine each real character.
      TextElementEnumerator charEnum = StringInfo.GetTextElementEnumerator(s);
      while (charEnum.MoveNext()) {
         sb.AppendFormat(
           "Character at index {0} is '{1}'{2}",
           charEnum.ElementIndex, charEnum.GetTextElement(),
           Environment.NewLine);
      }

      // Show the results.
      Console.WriteLine("Result of GetTextElementEnumerator:");
      Console.WriteLine(sb);
   }

   // Show how to discover the index of each real character (honoring surrogates) in a string.
   static void EnumTextElementIndexes(String s) {
      // This StringBuilder holds the output results.
      StringBuilder sb = new StringBuilder();

      // Use the ParseCombiningCharacters method to 
      // get the index of each real character in the string.
      Int32[] textElemIndex = StringInfo.ParseCombiningCharacters(s);

      // Iterate through each real character showing the character and the index where it was found.
      for (Int32 i = 0; i < textElemIndex.Length; i++) {
         sb.AppendFormat(
            "Character {0} starts at index {1}{2}",
            i, textElemIndex[i], Environment.NewLine);
      }

      // Show the results.
      Console.WriteLine("Result of ParseCombiningCharacters:");
      Console.WriteLine(sb);
   }
}

// This code produces the following output.
//
// Result of GetTextElementEnumerator:
// Character at index 0 is 'a-"'
// Character at index 3 is 'b'
// Character at index 4 is 'c,'
// 
// Result of ParseCombiningCharacters:
// Character 0 starts at index 0
// Character 1 starts at index 3
// Character 2 starts at index 4

유니버설 Windows 플랫폼
8 이후 사용 가능
.NET Framework
1.1 이후 사용 가능
이식 가능한 클래스 라이브러리
이식 가능한 .NET 플랫폼 에서 지원됨
Silverlight
2.0 이후 사용 가능
Windows Phone Silverlight
7.0 이후 사용 가능
Windows Phone
8.1 이후 사용 가능
맨 위로 이동
표시: