Strings.Mid Method (String, Int32, Int32)


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

Returns a string that contains a specified number of characters starting from a specified position in a string.

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

static member Mid : 
        str:string *
        Start:int *
        Length:int -> string


Type: System.String

Required. String expression from which characters are returned.

Type: System.Int32

Required. Integer expression. Starting position of the characters to return. If Start is greater than the number of characters in str, the Mid function returns a zero-length string (""). Start is one based.

Type: System.Int32

Optional. Integer expression. Number of characters to return. If omitted or if there are fewer than Length characters in the text (including the character at position Start), all characters from the start position to the end of the string are returned.

Return Value

Type: System.String

A string that consists of the specified number of characters starting from the specified position in the string.

Exception Condition

Start <= 0 or Length < 0.

To determine the number of characters in str, use the Len function.

Visual Basic has a Mid function and a Mid statement. These elements both operate on a specified number of characters in a string, but the Mid function returns the characters while the Mid statement replaces the characters. For more information, see Mid Statement.


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

The first two Mid functions in this example return the specified number of characters from a string, starting from the given positions. (The last function illustrates the Mid(String, Int32) overload and only specifies the starting point for the string extraction.)

' Creates text string.
Dim TestString As String = "Mid Function Demo"
' Returns "Mid".
Dim FirstWord As String = Mid(TestString, 1, 3)
' Returns "Demo".
Dim LastWord As String = Mid(TestString, 14, 4)
' Returns "Function Demo".
Dim MidWords As String = Mid(TestString, 5)

.NET Framework
Available since 1.1
Available since 2.0
Return to top