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

 

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

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

Public Function Replace (
	oldValue As String,
	newValue As String,
	startIndex As Integer,
	count As Integer
) As StringBuilder

Parameters

oldValue
Type: System.String

The string to replace.

newValue
Type: System.String

The string that replaces oldValue, or null.

startIndex
Type: System.Int32

The position in this instance where the substring begins.

count
Type: System.Int32

The length of the substring.

Return Value

Type: System.Text.StringBuilder

A reference to this instance with all instances of oldValue replaced by newValue in the range from startIndex to startIndex + count - 1.

Exception Condition
ArgumentNullException

oldValue is null.

ArgumentException

The length of oldValue is zero.

ArgumentOutOfRangeException

startIndex or count is less than zero.

-or-

startIndex plus count indicates a character position not within this instance.

-or-

Enlarging the value of this instance would exceed MaxCapacity.

This method performs an ordinal, case-sensitive comparison to identify occurrences of oldValue in the specified substring. If newValue is nullorString.Empty, all occurrences of oldValue are removed.

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()
      Console.WriteLine("StringBuilder.Replace method")
      Console.WriteLine()

      Console.WriteLine("Original value:")
      Show(sb)

      sb.Replace("#"c, "!"c, 15, 29)   ' Some '#' -> '!'
      Show(sb)
      sb.Replace("!"c, "o"c)           ' All '!' -> 'o'
      Show(sb)
      sb.Replace("cat", "dog")         ' All "cat" -> "dog"
      Show(sb)
      sb.Replace("dog", "fox", 15, 20) ' Some "dog" -> "fox"
      Console.WriteLine("Final value:")
      Show(sb)
   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(rule1)
      Console.WriteLine(rule2)
      Console.WriteLine("{0}", sbs.ToString())
      Console.WriteLine()
   End Sub 'Show
End Class 'Sample
'
'This example produces the following results:
'
'StringBuilder.Replace method
'
'Original value:
'0----+----1----+----2----+----3----+----4---
'01234567890123456789012345678901234567890123
'The quick br!wn d#g jumps #ver the lazy cat.
'
'0----+----1----+----2----+----3----+----4---
'01234567890123456789012345678901234567890123
'The quick br!wn d!g jumps !ver the lazy cat.
'
'0----+----1----+----2----+----3----+----4---
'01234567890123456789012345678901234567890123
'The quick brown dog jumps over the lazy cat.
'
'0----+----1----+----2----+----3----+----4---
'01234567890123456789012345678901234567890123
'The quick brown dog jumps over the lazy dog.
'
'Final value:
'0----+----1----+----2----+----3----+----4---
'01234567890123456789012345678901234567890123
'The quick brown fox jumps over the lazy dog.
'

Universal Windows Platform
Available since 8
.NET Framework
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1
Return to top
Show: