This documentation is archived and is not being maintained.

String.Substring Method (Int32, Int32)

Retrieves a substring from this instance. The substring starts at a specified character position and has a specified length.

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

Public Function Substring ( _
	startIndex As Integer, _
	length As Integer _
) As String


Type: System.Int32
The zero-based starting character position of a substring in this instance.
Type: System.Int32
The number of characters in the substring.

Return Value

Type: System.String
A string that is equivalent to the substring of length length that begins at startIndex in this instance, or Empty if startIndex is equal to the length of this instance and length is zero.


startIndex plus length indicates a position not within this instance.


startIndex or length is less than zero.

startIndex is zero-based.


   This method does not modify the value of the current instance. Instead, it returns a new string with length characters starting from the startIndex position in the current string.

The following example uses the Substring method in three cases to isolate substrings within a string. In two cases the substrings are used in comparisons, and in the third case an exception is thrown because invalid parameters are specified.

Dim myString As String = "abc"
Dim test1 As Boolean = myString.Substring(2, 1).Equals("c") ' This is true.
Dim test2 As Boolean = String.IsNullOrEmpty(myString.Substring(3, 0)) ' This is true.
   Dim str3 As String = myString.Substring(3, 1) ' This throws ArgumentOutOfRangeException.
Catch e As ArgumentOutOfRangeException
End Try   

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Portable Class Library

Supported in: Portable Class Library

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.