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

String.LastIndexOf 메서드 (String, Int32)

 

이 인스턴스에서 마지막으로 발견되는 지정된 문자열의 0부터 시작하는 인덱스 위치를 보고합니다. 지정된 문자 위치에서 시작하고 문자열의 시작 부분을 향해 뒤로 검색이 진행됩니다.

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

public int LastIndexOf(
	string value,
	int startIndex
)

매개 변수

value
Type: System.String

검색할 문자열입니다.

startIndex
Type: System.Int32

검색을 시작할 위치입니다. startIndex에서 이 인스턴스의 시작 부분을 향해 검색이 진행됩니다.

반환 값

Type: System.Int32

해당 문자열이 있으면 value의 인덱스 위치(0부터 시작)이고, 해당 문자열이 없거나 현재 인스턴스가 String.Empty와 같으면 -1입니다. valueString.Empty이면 반환 값은 startIndex와 이 인스턴스의 마지막 인덱스 위치 중 작은 값입니다.

Exception Condition
ArgumentNullException

valuenull인 경우

ArgumentOutOfRangeException

현재 인스턴스가 String.Empty와 같지 않고 startIndex가 0보다 작거나 현재 인스턴스의 길이보다 큽니다.

또는

현재 인스턴스가 String.Empty와 같고 startIndex가 -1보다 작거나 0보다 큽니다.

인덱스 번호는 0부터 시작합니다. 즉, 문자열의 첫 문자 인덱스 0에는 및 마지막 Length -1입니다.

검색이 시작는 startIndex 문자이 인스턴스 위치 때까지 뒤로 value 발견 되 찾거나 첫 번째 문자 위치입니다. 예를 들어 경우 startIndexLength -1, 메서드 시작 부분에 문자열에 있는 모든 문자와 마지막 문자에서를 검색 합니다.

이 메서드는 현재 문화권을 사용 하는 word (대/소문자 구분 및 문화권을 구분) 검색을 수행 합니다.

문자 집합에는 무시할 수 있는 문자가 포함되며, 이들 문자는 언어 또는 문화권 구분 비교를 수행하는 경우 고려되지 않습니다. 문화권 구분 검색에서는 value에 무시할 수 있는 문자가 포함된 경우 결과는 해당 문자가 제거된 대상을 검색하는 것과 같습니다. 경우 value 하나 이상의 무시할 수 있는 문자로 구성 되어는 LastIndexOf(String, Int32) 메서드는 항상 반환 startIndex, 즉 검색을 시작할 문자 위치입니다. 다음 예제에서는 LastIndexOf(String, Int32) 메서드 하이픈이 (U + 00AD)를 포함 하 고 앞 또는 마지막 "m" 문자열에 포함 하는 부분 문자열을 찾는 데 사용 됩니다. 이 예제에서 실행 되 면는 .NET Framework 4 하거나 검색 문자열에 하이픈은 무시 되므로 이상 버전에서는 사용자 지정 하이픈 및 "m"으로 구성 된 부분 문자열을 하이픈으로 구성 된 부분 문자열을 찾기 위해 호출 하는 반면 문자열에 "m"의 위치를 반환 하 고 "n"은 "n"의 위치를 반환 합니다. 찾을 수 메서드를 호출 합니다. 검색 문자열만 하이픈을 포함 된 경우 메서드는 "m"의 값을 나타내는의 인덱스를 반환 하는 startIndex합니다.

using System;

public class Example
{
   public static void Main()
   {
      int position = 0;
      string s1 = "ani\u00ADmal";
      string s2 = "animal";

      // Find the index of the soft hyphen.
      position = s1.LastIndexOf("m");
      Console.WriteLine("'m' at position {0}", position);
      if (position >= 0)
         Console.WriteLine(s1.LastIndexOf("\u00AD", position));

      position = s2.LastIndexOf("m");
      Console.WriteLine("'m' at position {0}", position);
      if (position >= 0)   
         Console.WriteLine(s2.LastIndexOf("\u00AD", position));

      // Find the index of the soft hyphen followed by "n".
      position = s1.LastIndexOf("m");
      Console.WriteLine("'m' at position {0}", position);
      if (position >= 0)
         Console.WriteLine(s1.LastIndexOf("\u00ADn", position));

      position = s2.LastIndexOf("m");
      Console.WriteLine("'m' at position {0}", position);
      if (position >= 0)   
         Console.WriteLine(s2.LastIndexOf("\u00ADn", position));

      // Find the index of the soft hyphen followed by "m".
      position = s1.LastIndexOf("m");
      Console.WriteLine("'m' at position {0}", position);
      if (position >= 0)
         Console.WriteLine(s1.LastIndexOf("\u00ADm", position));

      position = s2.LastIndexOf("m");
      Console.WriteLine("'m' at position {0}", position);
      if (position >= 0)   
         Console.WriteLine(s2.LastIndexOf("\u00ADm", position));
   }
}
// The example displays the following output:
//       'm' at position 4
//       4
//       'm' at position 3
//       3
//       'm' at position 4
//       1
//       'm' at position 3
//       1
//       'm' at position 4
//       4
//       'm' at position 3
//       3

호출자 참고 사항:

에 설명 된 대로 .NET Framework에서 문자열 사용에 대한 유용한 정보, 기본 값으로 대체 하 고 대신 매개 변수를 명시적으로 지정 해야 하는 메서드를 호출 하는 문자열 비교 메서드를 호출 하지 않는 것이 좋습니다. 현재 문화권의 비교 규칙을 사용 하 여 특정 문자 위치를 앞에 있는 부분 문자열의 인덱스를 찾기 위해 호출 된 LastIndexOf(String, Int32, StringComparison) 메서드 오버 로드의 값을 가진 StringComparison.CurrentCulture 에 대 한 해당 comparisonType 매개 변수입니다.

다음 예제에서는 대상 문자열에 대상 문자열의 시작 부분에 대상 문자열의 끝에서 작업 하는 모든 문자열의 인덱스를 찾습니다.

// Sample for String.LastIndexOf(String, Int32)
using System;

class Sample {
    public static void Main() {

    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;

    start = str.Length-1;
    Console.WriteLine("All occurrences of 'he' from position {0} to 0.", start);
    Console.WriteLine("{1}{0}{2}{0}{3}{0}", Environment.NewLine, br1, br2, str);
    Console.Write("The string 'he' occurs at position(s): ");

    at = 0;
    while((start > -1) && (at > -1))
        {
        at = str.LastIndexOf("he", start);
        if (at > -1) 
            {
            Console.Write("{0} ", at);
            start = at - 1;
            }
        }
    Console.Write("{0}{0}{0}", Environment.NewLine);
    }
}
/*
This example produces the following results:
All occurrences of 'he' from position 66 to 0.
0----+----1----+----2----+----3----+----4----+----5----+----6----+-
0123456789012345678901234567890123456789012345678901234567890123456
Now is the time for all good men to come to the aid of their party.

The string 'he' occurs at position(s): 56 45 8


*/

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