StringBuilder.Replace Method (String, String)
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
Replaces all occurrences of a specified string in this instance with another specified string.
Assembly: mscorlib (in mscorlib.dll)
'Declaration Public Function Replace ( _ oldValue As String, _ newValue As String _ ) As StringBuilder
Parameters
- oldValue
- Type: System.String
The string to replace.
- newValue
- Type: System.String
The string that replaces oldValue, or Nothing.
Return Value
Type: System.Text.StringBuilderA reference to this instance with all instances of oldValue replaced by newValue.
| Exception | Condition |
|---|---|
| ArgumentNullException | oldValue is Nothing. |
| ArgumentException | The length of oldvalue is zero. |
| ArgumentOutOfRangeException | Enlarging the value of this instance would exceed its maximum capacity. |
The strings to replace are checked on an ordinal basis; that is, the replacement is not culture-aware. If newValue is Nothing, all occurrences of oldValue are removed. This method is case-sensitive.
Version Notes
Windows Phone
If you call this method when a null character exists in the string, the new string will be truncated at the first null character.The following code example demonstrates the Replace method.
Imports System.Text Class Example Public Shared Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock) ' 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) outputBlock.Text &= vbCrLf outputBlock.Text &= "StringBuilder.Replace method" & vbCrLf outputBlock.Text &= vbCrLf outputBlock.Text &= "Original value:" & vbCrLf Show(outputBlock, sb) sb.Replace("#"c, "!"c, 15, 29) ' Some '#' -> '!' Show(outputBlock, sb) sb.Replace("!"c, "o"c) ' All '!' -> 'o' Show(outputBlock, sb) sb.Replace("cat", "dog") ' All "cat" -> "dog" Show(outputBlock, sb) sb.Replace("dog", "fox", 15, 20) ' Some "dog" -> "fox" outputBlock.Text &= "Final value:" & vbCrLf Show(outputBlock, sb) End Sub 'Main Public Shared Sub Show(ByVal outputBlock As System.Windows.Controls.TextBlock, ByVal sbs As StringBuilder) Dim rule1 As String = "0----+----1----+----2----+----3----+----4---" Dim rule2 As String = "01234567890123456789012345678901234567890123" outputBlock.Text &= rule1 & vbCrLf outputBlock.Text &= rule2 & vbCrLf outputBlock.Text += String.Format("{0}", sbs.ToString()) & vbCrLf outputBlock.Text &= vbCrLf 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. '