LastIndexOfAny Method (Char[], Int32)
Collapse the table of content
Expand the table of content

String.LastIndexOfAny Method (Char(), Int32)

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

Reports the zero-based index position of the last occurrence in this instance of one or more characters specified in a Unicode array. The search starts at a specified character position and proceeds backward toward the beginning of the string.

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

'Declaration
Public Function LastIndexOfAny ( _
	anyOf As Char(), _
	startIndex As Integer _
) As Integer

Parameters

anyOf
Type: System.Char ()
A Unicode character array containing one or more characters to seek.
startIndex
Type: System.Int32
The search starting position. The search proceeds from startIndex toward the beginning of this instance.

Return Value

Type: System.Int32
The index position of the last occurrence in this instance where any character in anyOf was found; otherwise, -1 if no character in anyOf was found or if the current instance equals String.Empty.

ExceptionCondition
ArgumentNullException

anyOf is Nothing.

ArgumentOutOfRangeException

The current instance does not equal String.Empty and startIndex specifies a position not within this instance.

Index numbering starts from zero.

This method begins searching at the startIndex character position of this instance and proceeds backward toward the beginning until either a character in anyOf 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.

The following example finds the index of the last occurrence of any character in the string "is" within a substring of another string.


' Sample for String.LastIndexOfAny(Char[], Int32)
 _

Class Example

   Public Shared Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)

      Dim br1 As String = "0----+----1----+----2----+----3----+----4----+----5----+----6----+-"
      Dim br2 As String = "0123456789012345678901234567890123456789012345678901234567890123456"
      Dim str As String = "Now is the time for all good men to come to the aid of their party."
      Dim start As Integer
      Dim at As Integer
      Dim target As String = "is"
      Dim anyOf As Char() = target.ToCharArray()

      start = (str.Length - 1) / 2
      outputBlock.Text += String.Format("The last character occurrence  from position {0} to 0.", start) & vbCrLf
      outputBlock.Text += String.Format("{1}{0}{2}{0}{3}{0}", Environment.NewLine, br1, br2, str) & vbCrLf
      outputBlock.Text += String.Format("A character in '{0}' occurs at position: ", target)

      at = str.LastIndexOfAny(anyOf, start)
      If at > -1 Then
         outputBlock.Text &= at
      Else
         outputBlock.Text &= "(not found)"
      End If
      outputBlock.Text += String.Format("{0}{0}{0}", Environment.NewLine)
   End Sub 'Main
End Class 'Sample
'
'This example produces the following results:
'The last character occurrence  from position 33 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.
'
'A character in 'is' occurs at position: 12
'
'
'


Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone

Show:
© 2017 Microsoft