StringBuilder.Replace Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Replaces all occurrences of a specified character or string in this instance with another specified character or string.
Overloads
Replace(Char, Char) |
Replaces all occurrences of a specified character in this instance with another specified character. |
Replace(ReadOnlySpan<Char>, ReadOnlySpan<Char>) |
Replaces all instances of one read-only character span with another in this builder. |
Replace(String, String) |
Replaces all occurrences of a specified string in this instance with another specified string. |
Replace(Char, Char, Int32, Int32) |
Replaces, within a substring of this instance, all occurrences of a specified character with another specified character. |
Replace(ReadOnlySpan<Char>, ReadOnlySpan<Char>, Int32, Int32) |
Replaces all instances of one read-only character span with another in part of this builder. |
Replace(String, String, Int32, Int32) |
Replaces, within a substring of this instance, all occurrences of a specified string with another specified string. |
Examples
The following example demonstrates the Replace method.
using namespace System;
using namespace System::Text;
void Show( StringBuilder^ sbs )
{
String^ rule1 = "0----+----1----+----2----+----3----+----4---";
String^ rule2 = "01234567890123456789012345678901234567890123";
Console::WriteLine( rule1 );
Console::WriteLine( rule2 );
Console::WriteLine( "{0}", sbs );
Console::WriteLine();
}
int main()
{
// 0----+----1----+----2----+----3----+----4---
// 01234567890123456789012345678901234567890123
String^ str = "The quick br!wn d#g jumps #ver the lazy cat.";
StringBuilder^ sb = gcnew StringBuilder( str );
Console::WriteLine();
Console::WriteLine( "StringBuilder.Replace method" );
Console::WriteLine();
Console::WriteLine( "Original value:" );
Show( sb );
sb->Replace( '#', '!', 15, 29 ); // Some '#' -> '!'
Show( sb );
sb->Replace( '!', 'o' ); // 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 );
}
/*
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.
*/
using System;
using System.Text;
class Sample
{
public static void Main()
{
// 0----+----1----+----2----+----3----+----4---
// 01234567890123456789012345678901234567890123
string str = "The quick br!wn d#g jumps #ver the lazy cat.";
StringBuilder sb = new StringBuilder(str);
Console.WriteLine();
Console.WriteLine("StringBuilder.Replace method");
Console.WriteLine();
Console.WriteLine("Original value:");
Show(sb);
sb.Replace('#', '!', 15, 29); // Some '#' -> '!'
Show(sb);
sb.Replace('!', 'o'); // 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);
}
public static void Show(StringBuilder sbs)
{
string rule1 = "0----+----1----+----2----+----3----+----4---";
string rule2 = "01234567890123456789012345678901234567890123";
Console.WriteLine(rule1);
Console.WriteLine(rule2);
Console.WriteLine("{0}", sbs.ToString());
Console.WriteLine();
}
}
/*
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.
*/
open System.Text
let show (sbs: StringBuilder) =
let rule1 = "0----+----1----+----2----+----3----+----4---"
let rule2 = "01234567890123456789012345678901234567890123"
printfn $"{rule1}\n{rule2}\n{sbs}\n"
// 0----+----1----+----2----+----3----+----4---
// 01234567890123456789012345678901234567890123
let str = "The quick br!wn d#g jumps #ver the lazy cat."
let sb = StringBuilder str
printfn "StringBuilder.Replace method\n"
printfn "Original value:"
show sb
sb.Replace('#', '!', 15, 29) |> ignore // Some '#' -> '!'
show sb
sb.Replace('!', 'o') |> ignore // All '!' -> 'o'
show sb
sb.Replace("cat", "dog") |> ignore // All "cat" -> "dog"
show sb
sb.Replace("dog", "fox", 15, 20) |> ignore // Some "dog" -> "fox"
printfn "Final value:"
show sb
// 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.
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
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
End Class
'
'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.
'
Replace(Char, Char)
- Source:
- StringBuilder.cs
- Source:
- StringBuilder.cs
- Source:
- StringBuilder.cs
Replaces all occurrences of a specified character in this instance with another specified character.
public:
System::Text::StringBuilder ^ Replace(char oldChar, char newChar);
public System.Text.StringBuilder Replace (char oldChar, char newChar);
member this.Replace : char * char -> System.Text.StringBuilder
Public Function Replace (oldChar As Char, newChar As Char) As StringBuilder
Parameters
- oldChar
- Char
The character to replace.
- newChar
- Char
The character that replaces oldChar
.
Returns
A reference to this instance with oldChar
replaced by newChar
.
Remarks
This method performs an ordinal, case-sensitive comparison to identify occurrences of oldChar
in the current instance. The size of the current StringBuilder instance is unchanged after the replacement.
Applies to
Replace(ReadOnlySpan<Char>, ReadOnlySpan<Char>)
- Source:
- StringBuilder.cs
Replaces all instances of one read-only character span with another in this builder.
public:
System::Text::StringBuilder ^ Replace(ReadOnlySpan<char> oldValue, ReadOnlySpan<char> newValue);
public System.Text.StringBuilder Replace (ReadOnlySpan<char> oldValue, ReadOnlySpan<char> newValue);
member this.Replace : ReadOnlySpan<char> * ReadOnlySpan<char> -> System.Text.StringBuilder
Public Function Replace (oldValue As ReadOnlySpan(Of Char), newValue As ReadOnlySpan(Of Char)) As StringBuilder
Parameters
- oldValue
- ReadOnlySpan<Char>
The read-only character span to replace.
- newValue
- ReadOnlySpan<Char>
The read-only character span to replace oldValue
with.
Returns
A reference to this instance with oldChar
replaced by newChar
.
Remarks
If newValue
is empty, instances of oldValue
are removed from this builder.
Applies to
Replace(String, String)
- Source:
- StringBuilder.cs
- Source:
- StringBuilder.cs
- Source:
- StringBuilder.cs
Replaces all occurrences of a specified string in this instance with another specified string.
public:
System::Text::StringBuilder ^ Replace(System::String ^ oldValue, System::String ^ newValue);
public System.Text.StringBuilder Replace (string oldValue, string newValue);
public System.Text.StringBuilder Replace (string oldValue, string? newValue);
member this.Replace : string * string -> System.Text.StringBuilder
Public Function Replace (oldValue As String, newValue As String) As StringBuilder
Parameters
- oldValue
- String
The string to replace.
- newValue
- String
The string that replaces oldValue
, or null
.
Returns
A reference to this instance with all instances of oldValue
replaced by newValue
.
Exceptions
oldValue
is null
.
The length of oldValue
is zero.
Enlarging the value of this instance would exceed MaxCapacity.
Remarks
This method performs an ordinal, case-sensitive comparison to identify occurrences of oldValue
in the current instance. If newValue
is null
or String.Empty, all occurrences of oldValue
are removed.
See also
Applies to
Replace(Char, Char, Int32, Int32)
- Source:
- StringBuilder.cs
- Source:
- StringBuilder.cs
- Source:
- StringBuilder.cs
Replaces, within a substring of this instance, all occurrences of a specified character with another specified character.
public:
System::Text::StringBuilder ^ Replace(char oldChar, char newChar, int startIndex, int count);
public System.Text.StringBuilder Replace (char oldChar, char newChar, int startIndex, int count);
member this.Replace : char * char * int * int -> System.Text.StringBuilder
Public Function Replace (oldChar As Char, newChar As Char, startIndex As Integer, count As Integer) As StringBuilder
Parameters
- oldChar
- Char
The character to replace.
- newChar
- Char
The character that replaces oldChar
.
- startIndex
- Int32
The position in this instance where the substring begins.
- count
- Int32
The length of the substring.
Returns
A reference to this instance with oldChar
replaced by newChar
in the range from startIndex
to startIndex
+ count
-1.
Exceptions
startIndex
+ count
is greater than the length of the value of this instance.
-or-
startIndex
or count
is less than zero.
Remarks
This method performs an ordinal, case-sensitive comparison to identify occurrences of oldChar
in the current instance. The size of the current StringBuilder object is unchanged after the replacement.
Applies to
Replace(ReadOnlySpan<Char>, ReadOnlySpan<Char>, Int32, Int32)
- Source:
- StringBuilder.cs
Replaces all instances of one read-only character span with another in part of this builder.
public:
System::Text::StringBuilder ^ Replace(ReadOnlySpan<char> oldValue, ReadOnlySpan<char> newValue, int startIndex, int count);
public System.Text.StringBuilder Replace (ReadOnlySpan<char> oldValue, ReadOnlySpan<char> newValue, int startIndex, int count);
member this.Replace : ReadOnlySpan<char> * ReadOnlySpan<char> * int * int -> System.Text.StringBuilder
Public Function Replace (oldValue As ReadOnlySpan(Of Char), newValue As ReadOnlySpan(Of Char), startIndex As Integer, count As Integer) As StringBuilder
Parameters
- oldValue
- ReadOnlySpan<Char>
The read-only character span to replace.
- newValue
- ReadOnlySpan<Char>
The read-only character span to replace oldValue
with.
- startIndex
- Int32
The index to start in this builder.
- count
- Int32
The number of characters to read in this builder.
Returns
A reference to this instance with oldChar
replaced by newChar
.
Remarks
If newValue
is empty, instances of oldValue
are removed from this builder.
Applies to
Replace(String, String, Int32, Int32)
- Source:
- StringBuilder.cs
- Source:
- StringBuilder.cs
- Source:
- StringBuilder.cs
Replaces, within a substring of this instance, all occurrences of a specified string with another specified string.
public:
System::Text::StringBuilder ^ Replace(System::String ^ oldValue, System::String ^ newValue, int startIndex, int count);
public System.Text.StringBuilder Replace (string oldValue, string newValue, int startIndex, int count);
public System.Text.StringBuilder Replace (string oldValue, string? newValue, int startIndex, int count);
member this.Replace : string * string * int * int -> System.Text.StringBuilder
Public Function Replace (oldValue As String, newValue As String, startIndex As Integer, count As Integer) As StringBuilder
Parameters
- oldValue
- String
The string to replace.
- newValue
- String
The string that replaces oldValue
, or null
.
- startIndex
- Int32
The position in this instance where the substring begins.
- count
- Int32
The length of the substring.
Returns
A reference to this instance with all instances of oldValue
replaced by newValue
in the range from startIndex
to startIndex
+ count
- 1.
Exceptions
oldValue
is null
.
The length of oldValue
is zero.
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.
Remarks
This method performs an ordinal, case-sensitive comparison to identify occurrences of oldValue
in the specified substring. If newValue
is null
or String.Empty, all occurrences of oldValue
are removed.
See also
Applies to
Feedback
https://aka.ms/ContentUserFeedback.
Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:Submit and view feedback for