String.LastIndexOf Method (Char)

Microsoft Silverlight will reach end of support after October 2021. Learn more.

Reports the zero-based index position of the last occurrence of a specified Unicode character within this instance.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

Syntax

'Declaration
Public Function LastIndexOf ( _
    value As Char _
) As Integer
public int LastIndexOf(
    char value
)

Parameters

Return Value

Type: System.Int32
The zero-based index position of value if that character is found, or -1 if it is not.

Remarks

Index numbering starts from zero. That is, the first character in the string is at index zero and the last is at Length - 1.

This method begins searching at the last character position of this instance and proceeds backward toward the beginning until either value is found or the first character position has been examined. The search is case-sensitive.

This method performs an ordinal (culture-insensitive) search, where a character is considered equivalent to another character only if their Unicode scalar values are the same. To perform a culture-sensitive search, use the CompareInfo.LastIndexOf method, where a Unicode scalar value representing a precomposed character, such as the ligature 'Æ' (U+00C6), might be considered equivalent to any occurrence of the character's components in the correct sequence, such as "AE" (U+0041, U+0045), depending on the culture.

Examples

The following example demonstrates how you can search a String for a character using the LastIndexOf method.

' Create a Unicode String with 5 Greek Alpha characters
Dim szGreekAlpha As New String(ChrW(&H319), 5)
' Create a Unicode String with a Greek Omega character
Dim szGreekOmega As New String(New Char() {ChrW(&H3A9), ChrW(&H3A9), _
                                           ChrW(&H3A9)}, 2, 1)

Dim szGreekLetters As String = String.Concat(szGreekOmega, szGreekAlpha, _
                                             szGreekOmega)

' Examine the result
outputBlock.Text &= szGreekLetters & vbCrLf

' The first index of Alpha
Dim iAlpha As Integer = szGreekLetters.IndexOf(ChrW(&H319))
' The last index of Omega
Dim iomega As Integer = szGreekLetters.LastIndexOf(ChrW(&H3A9))

outputBlock.Text &= String.Format("The Greek letter Alpha first appears at index {0}.", _
                  iAlpha) & vbCrLf
outputBlock.Text &= String.Format("The Greek letter Omega last appears at index {0}.", _
                  iomega) & vbCrLf
// Create a Unicode String with 5 Greek Alpha characters
String szGreekAlpha = new String('\u0319', 5);
// Create a Unicode String with a Greek Omega character
String szGreekOmega = new String(new char[] { '\u03A9', '\u03A9', '\u03A9' }, 2, 1);

String szGreekLetters = String.Concat(szGreekOmega, szGreekAlpha, szGreekOmega);

// Examine the result
outputBlock.Text += szGreekLetters + "\n";

// The first index of Alpha
int ialpha = szGreekLetters.IndexOf('\u0319');
// The last index of Omega
int iomega = szGreekLetters.LastIndexOf('\u03A9');

outputBlock.Text += "The Greek letter Alpha first appears at index " + ialpha +
    " and Omega last appears at index " + iomega + " in this String." + "\n";

Version Information

Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

Platforms

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.