This documentation is archived and is not being maintained.

StringBuilder.Replace Method (Char, Char, Int32, Int32)

Replaces, within a substring of this instance, all occurrences of a specified character with another specified character.

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

Public Function Replace ( _
	oldChar As Char, _
	newChar As Char, _
	startIndex As Integer, _
	count As Integer _
) As StringBuilder


Type: System.Char
The character to replace.
Type: System.Char
The character that replaces oldChar.
Type: System.Int32
The position in this instance where the substring begins.
Type: System.Int32
The length of the substring.

Return Value

Type: System.Text.StringBuilder
A reference to this instance with oldChar replaced by newChar in the range from startIndex to startIndex + count -1.


startIndex + count is greater than the length of the value of this instance.


startIndex or count is less than zero.

The size of the StringBuilder is unchanged because characters are only replaced. This method is case-sensitive.

The following example demonstrates the Replace method.

Imports System
Imports System.Text

Class Sample
   Public Shared Sub Main()
      '                    0----+----1----+----2----+----3----+----4---
      '                    01234567890123456789012345678901234567890123
      Dim str As String = "The quick br!wn d#g jumps #ver the lazy cat."
      Dim sb As New StringBuilder(str)

      Console.WriteLine("StringBuilder.Replace method")

      Console.WriteLine("Original value:")

      sb.Replace("#"c, "!"c, 15, 29)   ' Some '#' -> '!'
      sb.Replace("!"c, "o"c)           ' All '!' -> 'o'
      sb.Replace("cat", "dog")         ' All "cat" -> "dog"
      sb.Replace("dog", "fox", 15, 20) ' Some "dog" -> "fox"
      Console.WriteLine("Final value:")
   End Sub 'Main

   Public Shared Sub Show(sbs As StringBuilder)
      Dim rule1 As String = "0----+----1----+----2----+----3----+----4---"
      Dim rule2 As String = "01234567890123456789012345678901234567890123"

      Console.WriteLine("{0}", sbs.ToString())
   End Sub 'Show
End Class 'Sample
'This example produces the following results:
'StringBuilder.Replace method
'Original value:
'The quick br!wn d#g jumps #ver the lazy cat.
'The quick br!wn d!g jumps !ver the lazy cat.
'The quick brown dog jumps over the lazy cat.
'The quick brown dog jumps over the lazy dog.
'Final value:
'The quick brown fox jumps over the lazy dog.

.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.