String.Insert Method
Microsoft Silverlight will reach end of support after October 2021. Learn more.
Returns a new string in which a specified string is inserted at a specified index position in this instance.
Namespace: System
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
<SecuritySafeCriticalAttribute> _
Public Function Insert ( _
startIndex As Integer, _
value As String _
) As String
[SecuritySafeCriticalAttribute]
public string Insert(
int startIndex,
string value
)
Parameters
- startIndex
Type: System.Int32
The index position of the insertion.
- value
Type: System.String
The string to insert.
Return Value
Type: System.String
A new string that is equivalent to this instance, but with value inserted at position startIndex.
Exceptions
Exception | Condition |
---|---|
ArgumentNullException | value is nulla null reference (Nothing in Visual Basic). |
ArgumentOutOfRangeException | startIndex is negative or greater than the length of this instance. |
Remarks
If startIndex is equal to the length of this instance, value is appended to the end of this instance.
Note: |
---|
This method does not modify the value of the current instance. Instead, it returns a new string in which value is inserted into the current instance. |
For example, the return value of "abc".Insert(2, "XYZ") is "abXYZc".
Examples
The following example uses the Insert method to insert two randomly selected adjectives in front of two nouns in a string.
Public Class Example
Public Shared Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)
' Initialize random number generator to define adjectives to use.
Dim rnd As New Random()
Dim animal1 As String = "fox"
Dim animal2 As String = "dog"
Dim animal1Adjectives() As String = { "quick", "fast", "speedy", "energetic" }
Dim animal2Adjectives() As String = { "lazy", "sleeping", "slow-moving", "slothful" }
Dim strTarget As String = String.Format("The {0} jumped over the {1}.", animal1, animal2)
outputBlock.Text &= String.Format("The original string is:{0}{1}{0}", vbCrLf, strTarget)
' Generate a random number to extract an adjective from the array
' to describe each animal.
Dim animal1AdjectivePosition As Integer = rnd.Next(animal1Adjectives.GetLowerBound(0), _
animal1Adjectives.GetUpperBound(0) + 1)
Dim animal2AdjectivePosition As Integer = rnd.Next(animal1Adjectives.GetLowerBound(0), _
animal1Adjectives.GetUpperBound(0) + 1)
Dim animal1Adjective As String = animal1Adjectives(animal1AdjectivePosition) + " "
Dim animal2Adjective As String = animal2Adjectives(animal2AdjectivePosition) + " "
strTarget = strTarget.Insert(strTarget.IndexOf(animal1), animal1Adjective)
strTarget = strTarget.Insert(strTarget.IndexOf(animal2), animal2Adjective)
outputBlock.Text &= String.Format("{0}The final string is:{0}{1}{0}", vbCrLf, strTarget)
End Sub
End Class
' The output from the example may appear as follows:
' The original string is:
' The fox jumped over the dog.
'
' The final string is:
' The quick fox jumped over the slothful dog.
using System;
public class Example
{
public static void Demo(System.Windows.Controls.TextBlock outputBlock)
{
// Initialize random number generator to define adjectives to use.
Random rnd = new Random();
string animal1 = "fox";
string animal2 = "dog";
string[] animal1Adjectives = { "quick", "fast", "speedy", "energetic" };
string[] animal2Adjectives = { "lazy", "sleeping", "slow-moving", "slothful" };
string strTarget = String.Format("The {0} jumped over the {1}.", animal1, animal2);
outputBlock.Text += String.Format("The original string is:\n{0}\n", strTarget);
// Generate a random number to extract an adjective from the array
// to describe each animal.
int animal1AdjectivePosition = rnd.Next(animal1Adjectives.GetLowerBound(0),
animal1Adjectives.GetUpperBound(0) + 1);
int animal2AdjectivePosition = rnd.Next(animal1Adjectives.GetLowerBound(0),
animal1Adjectives.GetUpperBound(0) + 1);
string animal1Adjective = animal1Adjectives[animal1AdjectivePosition] + " ";
string animal2Adjective = animal2Adjectives[animal2AdjectivePosition] + " ";
strTarget = strTarget.Insert(strTarget.IndexOf(animal1), animal1Adjective);
strTarget = strTarget.Insert(strTarget.IndexOf(animal2), animal2Adjective);
outputBlock.Text += String.Format("\nThe final string is:\n{0}\n", strTarget);
}
}
// The output from the example may appear as follows:
// The original string is:
// The fox jumped over the dog.
//
// The final string is:
// The quick fox jumped over the slothful dog.
Version Information
Silverlight
Supported in: 5, 4, 3
Silverlight for Windows Phone
Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0
XNA Framework
Supported in: Xbox 360, Windows Phone OS 7.0
Platforms
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.