Reports the index of the first occurrence of the specified
String in this instance. The search starts at a specified character position.
Namespace: System
Assembly: mscorlib (in mscorlib.dll)
Visual Basic (Declaration)
Public Function IndexOf ( _
value As String, _
startIndex As Integer _
) As Integer
Dim instance As String
Dim value As String
Dim startIndex As Integer
Dim returnValue As Integer
returnValue = instance.IndexOf(value, startIndex)
public int IndexOf (
string value,
int startIndex
)
public:
int IndexOf (
String^ value,
int startIndex
)
public int IndexOf (
String value,
int startIndex
)
public function IndexOf (
value : String,
startIndex : int
) : int
Parameters
- value
The String to seek.
- startIndex
The search starting position.
Return Value
The index position of value if that string is found, or -1 if it is not. If value is Empty, the return value is startIndex.
Index numbering starts from zero.
This method performs a word (case-sensitive and culture-sensitive) search using the current culture. The search begins at the startIndex character position of this instance and continues until the last character position.
The following code example searches for all occurrences of a specified string within a target string.
Imports System
Public Class IndexOfTest
Public Shared Sub Main()
Dim strSource As String = "This is the string which we will perform the search on"
Console.WriteLine("The search string is:{0}{1}{0}", Environment.NewLine, strSource)
Dim strTarget As String = ""
Dim found As Integer = 0
Dim totFinds As Integer = 0
Do
Console.Write("Please enter a search value to look for in the above string (hit Enter to exit) ==> ")
strTarget = Console.ReadLine()
If strTarget <> "" Then
Dim i As Integer
For i = 0 To strSource.Length - 1
found = strSource.IndexOf(strTarget, i)
If found > 0 Then
totFinds += 1
i = found
Else
Exit For
End If
Next i
Else
Return
End If
Console.WriteLine("{0}The search parameter '{1}' was found {2} times.{0}", Environment.NewLine, strTarget, totFinds)
totFinds = 0
Loop While True
End Sub 'Main
End Class 'IndexOfTest
using System;
public class IndexOfTest {
public static void Main() {
string strSource = "This is the string which we will perform the search on";
Console.WriteLine("The search string is:{0}\"{1}\"{0}", Environment.NewLine, strSource);
string strTarget = "";
int found = 0;
int totFinds = 0;
do {
Console.Write("Please enter a search value to look for in the above string (hit Enter to exit) ==> ");
strTarget = Console.ReadLine();
if (strTarget != "") {
for (int i = 0; i < strSource.Length; i++) {
found = strSource.IndexOf(strTarget, i);
if (found > 0) {
totFinds++;
i = found;
}
else
break;
}
}
else
return;
Console.WriteLine("{0}The search parameter '{1}' was found {2} times.{0}",
Environment.NewLine, strTarget, totFinds);
totFinds = 0;
} while ( true );
}
}
using namespace System;
int main()
{
String^ strSource = "This is the string which we will perform the search on";
Console::WriteLine( "The search string is: {0}\"{1}\" {0}", Environment::NewLine, strSource );
String^ strTarget = "";
int found = 0;
int totFinds = 0;
do
{
Console::Write( "Please enter a search value to look for in the above string (hit Enter to exit) ==> " );
strTarget = Console::ReadLine();
if ( !strTarget->Equals( "" ) )
{
for ( int i = 0; i < strSource->Length; i++ )
{
found = strSource->IndexOf( strTarget, i );
if ( found > 0 )
{
totFinds++;
i = found;
}
else
break;
}
}
else
return 0;
Console::WriteLine( "{0}The search parameter '{1}' was found {2} times. {0}", Environment::NewLine, strTarget, totFinds );
totFinds = 0;
}
while ( true );
}
import System.*;
public class IndexOfTest
{
public static void main(String[] args)
{
String strSource = "This is the string which we will perform the "
+ "search on";
Console.WriteLine("The search string is:{0}\"{1}\"{0}",
Environment.get_NewLine(), strSource);
String strTarget = "";
int found = 0;
int totFinds = 0;
do {
Console.Write("Please enter a search value to look for in the "
+ "above string (hit Enter to exit) ==> ");
strTarget = Console.ReadLine();
if (!strTarget.Equals("")) {
for (int i = 0; i < strSource.get_Length(); i++) {
found = strSource.IndexOf(strTarget, i);
if (found > 0) {
totFinds++;
i = found;
}
else {
break;
}
}
}
else {
return;
}
Console.WriteLine("{0}The search parameter '{1}' was found {2} "
+ "times.{0}", Environment.get_NewLine(), strTarget,
(Int32)totFinds);
totFinds = 0;
} while (true);
} //main
} //IndexOfTest
import System;
public class IndexOfTest {
public static function Main() : void {
var strSource : String = "This is the string which we will perform the search on";
Console.WriteLine("The search string is:{0}\"{1}\"{0}", Environment.NewLine, strSource);
var strTarget : String = "";
var found : int = 0;
var totFinds : int = 0;
do {
Console.Write("Please enter a search value to look for in the above string (hit Enter to exit) ==> ");
strTarget = Console.ReadLine();
if (strTarget != "") {
for (var i : int = 0; i < strSource.Length; i++) {
found = strSource.IndexOf(strTarget, i);
if (found > 0) {
totFinds++;
i = found;
}
else
break;
}
}
else
return;
Console.WriteLine("{0}The search parameter '{1}' was found {2} times.{0}",
Environment.NewLine, strTarget, totFinds);
totFinds = 0;
} while ( true );
}
}
IndexOfTest.Main();
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.
.NET Framework
Supported in: 2.0, 1.1, 1.0
.NET Compact Framework
Supported in: 2.0, 1.0