Strings.InStr Method (Int32, String, String, CompareMethod)

 
System_CAPS_noteNote

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Returns an integer specifying the start position of the first occurrence of one string within another.

Namespace:   Microsoft.VisualBasic
Assembly:  Microsoft.VisualBasic (in Microsoft.VisualBasic.dll)

Public Shared Function InStr (
	Start As Integer,
	String1 As String,
	String2 As String,
	Compare As CompareMethod
) As Integer

Parameters

Start
Type: System.Int32

Optional. Numeric expression that sets the starting position for each search. If omitted, search begins at the first character position. The start index is 1-based.

String1
Type: System.String

Required. String expression being searched.

String2
Type: System.String

Required. String expression sought.

Compare
Type: Microsoft.VisualBasic.CompareMethod

Optional. Specifies the type of string comparison. If Compare is omitted, the Option Compare setting determines the type of comparison.

Return Value

Type: System.Int32

If

InStr returns

String1 is zero length or Nothing

0

String2 is zero length or Nothing

start

String2 is not found

0

String2 is found within String1

Position where match begins

Start > length of String1

0

Exception Condition
ArgumentException

Start < 1.

Typically, the InStr function is used when parsing strings.

System_CAPS_noteNote

The InStrB function in previous versions of Visual Basic returns a number of bytes rather than a character position. It is used primarily for converting strings in double-byte character set (DBCS) applications. All Visual Basic 2005 strings are in Unicode, and InStrB is no longer supported.

The Compare argument settings are:

Constant

Value

Description

Binary

0

Performs a binary comparison

Text

1

Performs a text comparison

This example uses the InStr function to return the position of the first occurrence of one string within another.

' String to search in.
Dim SearchString As String = "XXpXXpXXPXXP"
' Search for "P".
Dim SearchChar As String = "P"

Dim TestPos As Integer
' A textual comparison starting at position 4. Returns 6.
TestPos = InStr(4, SearchString, SearchChar, CompareMethod.Text)

' A binary comparison starting at position 1. Returns 9.
TestPos = InStr(1, SearchString, SearchChar, CompareMethod.Binary)

' If Option Compare is not set, or set to Binary, return 9.
' If Option Compare is set to Text, returns 3.
TestPos = InStr(SearchString, SearchChar)

' Returns 0.
TestPos = InStr(1, SearchString, "W")

.NET Framework
Available since 1.1
Silverlight
Available since 2.0
Return to top
Show: