System.String.IndexOf Method

Reports the zero-based index of the first occurrence of the specified Unicode character in this string. The search starts at a specified character position.

Syntax

public int IndexOf (char value, int startIndex)

Parameters

value
A Unicode character to seek.
startIndex
The search starting position.

Returns

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

Exceptions

TypeReason
ArgumentOutOfRangeException startIndex is less than zero or greater than the length of the current instance.

Remarks

Index numbering starts from 0. The startIndex parameter can range from 0 to the length of the string instance. If startIndex equals the length of the string instance, the method returns -1.

The search ranges from startIndex to the end of the string.

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 System.Globalization.CompareInfo.IndexOf(string, char) 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.

Example

The following example demonstrates the string.IndexOf(char) method.

C# Example

using System;
public class StringIndexOf {
 public static void Main() {
 String str = "This is the string";
 Console.WriteLine( "Searching for the index of 'h' starting from index 0 yields {0}.", str.IndexOf( 'h', 0 ) );
 Console.WriteLine( "Searching for the index of 'h' starting from index 10 yields {0}.", str.IndexOf( 'h', 10 ) );
 }
}

The output is

Searching for the index of 'h' starting from index 0 yields 1.
Searching for the index of 'h' starting from index 10 yields -1.

Requirements

Namespace: System
Assembly: mscorlib (in mscorlib.dll)
Assembly Versions: 1.0.5000.0, 2.0.0.0, 4.0.0.0