정보
요청한 주제가 아래에 표시됩니다. 그러나 이 주제는 이 라이브러리에 포함되지 않습니다.

String.LastIndexOfAny 메서드 (Char[], Int32, Int32)

2013-12-13

지정된 유니코드 문자 배열에 있는 하나 이상의 문자 중에서 맨 마지막으로 발견되는 문자의 0부터 시작하는 인덱스 위치를 보고합니다. 검색은 지정된 수의 문자 위치에 대해 지정된 문자 위치에서 시작하여 문자열의 시작 부분이 나올 때까지 역방향으로 진행됩니다.

Namespace:  System
어셈블리:  mscorlib(mscorlib.dll)

public int LastIndexOfAny(
	char[] anyOf,
	int startIndex,
	int count
)

매개 변수

anyOf
형식: System.Char []
검색할 문자를 하나 이상 포함하는 유니코드 문자 배열입니다.
startIndex
형식: System.Int32
검색을 시작할 위치입니다. 검색은 startIndex에서 시작하여 이 인스턴스의 시작 방향으로 진행됩니다.
count
형식: System.Int32
검사할 문자 위치의 수입니다.

반환 값

형식: System.Int32
anyOf의 문자가 있으면 이 인스턴스에서 마지막 항목의 인덱스 위치이고, 그렇지 않고 anyOf의 문자가 없거나 현재 인스턴스가 String.Empty와 같으면 -1입니다.

예외조건
ArgumentNullException

anyOfnull인 경우

ArgumentOutOfRangeException

현재 인스턴스는 String.Emptycount와 같지 않거나 startIndex이 음수입니다.

-또는-

현재 인스턴스가 String.Empty와 같지 않고 startIndex에서 count를 차감한 값이 이 인스턴스 내에 없는 위치를 지정합니다.

인덱스 번호는 0부터 시작합니다.

이 메서드는 이 인스턴스의 startIndex 문자 위치에서 검색을 시작하여 anyOf에 포함된 문자를 찾거나 count 개의 문자 위치를 검사할 때까지 뒤로 검색합니다. 검색은 대/소문자를 구분합니다.

이 메서드는 문화권 구분되지 않는 서수 검색을 수행합니다. 즉, 유니코드 스칼라 반환이 같기만 하면 문자는 다른 문자와 같은 것으로 간주됩니다. 문화권 구분 검색을 수행하려면 CompareInfo.LastIndexOf 메서드를 사용하여 연결 기호 'Æ'(U+00C6)와 같이 미리 구성된 문자를 나타내는 유니코드 스칼라 반환이 문화권에 따라 "AE"(U+0041, U+0045)와 같이 올바른 시퀀스로 된 모든 형태의 문자의 구성 요소와 동등하게 처리되도록 합니다.

다음 코드 예제에서는 다른 문자열의 부분 문자열에 있는 "aid" 문자열에서 맨 마지막으로 발견되는 문자의 인덱스를 찾습니다.


// Sample for String.LastIndexOfAny(Char[], Int32, Int32)
using System;

class Example
{
   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
   {

      string br1 = "0----+----1----+----2----+----3----+----4----+----5----+----6----+-";
      string br2 = "0123456789012345678901234567890123456789012345678901234567890123456";
      string str = "Now is the time for all good men to come to the aid of their party.";
      int start;
      int at;
      int count;
      string target = "aid";
      char[] anyOf = target.ToCharArray();

      start = ((str.Length - 1) * 2) / 3;
      count = (str.Length - 1) / 3;
      outputBlock.Text += String.Format("The last character occurrence from position {0} for {1} characters.", start, count) + "\n";
      outputBlock.Text += String.Format("{1}{0}{2}{0}{3}{0}", Environment.NewLine, br1, br2, str) + "\n";
      outputBlock.Text += String.Format("A character in '{0}' occurs at position: ", target);

      at = str.LastIndexOfAny(anyOf, start, count);
      if (at > -1)
         outputBlock.Text += at;
      else
         outputBlock.Text += "(not found)";
      outputBlock.Text += String.Format("{0}{0}{0}", Environment.NewLine);
   }
}
/*
This example produces the following results:
The last character occurrence from position 44 for 22 characters.
0----+----1----+----2----+----3----+----4----+----5----+----6----+-
0123456789012345678901234567890123456789012345678901234567890123456
Now is the time for all good men to come to the aid of their party.

A character in 'aid' occurs at position: 27
*/


Windows Phone OS

지원되는 버전: 8.0, 7.1, 7.0

Windows Phone

표시: