StringBuilder.Replace Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Zamienia wszystkie wystąpienia określonego znaku lub ciągu w tym wystąpieniu na inny określony znak lub ciąg.
Przeciążenia
| Replace(Char, Char) |
Zastępuje wszystkie wystąpienia określonego znaku w tym wystąpieniu innym określonym znakiem. |
| Replace(ReadOnlySpan<Char>, ReadOnlySpan<Char>) |
Zastępuje wszystkie wystąpienia jednego zakresu znaków tylko do odczytu innym w tym konstruktorze. |
| Replace(String, String) |
Zastępuje wszystkie wystąpienia określonego ciągu w tym wystąpieniu innym określonym ciągiem. |
| Replace(Char, Char, Int32, Int32) |
Zamienia w podciąg tego wystąpienia wszystkie wystąpienia określonego znaku na inny określony znak. |
| Replace(ReadOnlySpan<Char>, ReadOnlySpan<Char>, Int32, Int32) |
Zastępuje wszystkie wystąpienia jednego zakresu znaków tylko do odczytu innym w części tego konstruktora. |
| Replace(String, String, Int32, Int32) |
Zamienia ciąg w podciąg tego wystąpienia wszystkie wystąpienia określonego ciągu za pomocą innego określonego ciągu. |
Przykłady
W poniższym przykładzie pokazano metodę Replace.
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)
- Źródło:
- StringBuilder.cs
- Źródło:
- StringBuilder.cs
- Źródło:
- StringBuilder.cs
Zastępuje wszystkie wystąpienia określonego znaku w tym wystąpieniu innym określonym znakiem.
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
Parametry
- oldChar
- Char
Znak do zastąpienia.
- newChar
- Char
Znak, który zastępuje oldChar.
Zwraca
Odwołanie do tego wystąpienia z oldChar zastąpione przez newChar.
Uwagi
Ta metoda wykonuje porządkowe, wrażliwe na wielkość liter porównanie, aby zidentyfikować wystąpienia oldChar w bieżącym wystąpieniu. Rozmiar bieżącego wystąpienia StringBuilder jest niezmieniony po zamianie.
Dotyczy
Replace(ReadOnlySpan<Char>, ReadOnlySpan<Char>)
- Źródło:
- StringBuilder.cs
Zastępuje wszystkie wystąpienia jednego zakresu znaków tylko do odczytu innym w tym konstruktorze.
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
Parametry
- oldValue
- ReadOnlySpan<Char>
Zakres znaków tylko do odczytu do zastąpienia.
- newValue
- ReadOnlySpan<Char>
Zakres znaków tylko do odczytu, który zastąpi oldValue.
Zwraca
Uwagi
Jeśli newValue jest pusta, wystąpienia oldValue zostaną usunięte z tego konstruktora.
Dotyczy
Replace(String, String)
- Źródło:
- StringBuilder.cs
- Źródło:
- StringBuilder.cs
- Źródło:
- StringBuilder.cs
Zastępuje wszystkie wystąpienia określonego ciągu w tym wystąpieniu innym określonym ciągiem.
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
Parametry
- oldValue
- String
Ciąg do zastąpienia.
- newValue
- String
Ciąg, który zastępuje oldValue, lub null.
Zwraca
Odwołanie do tego wystąpienia ze wszystkimi wystąpieniami oldValue zastąpione przez newValue.
Wyjątki
oldValue jest null.
Długość oldValue wynosi zero.
Powiększenie wartości tego wystąpienia spowodowałoby przekroczenie MaxCapacity.
Uwagi
Ta metoda wykonuje porządkowe, wrażliwe na wielkość liter porównanie, aby zidentyfikować wystąpienia oldValue w bieżącym wystąpieniu. Jeśli newValue jest null lub String.Empty, wszystkie wystąpienia oldValue zostaną usunięte.
Zobacz też
Dotyczy
Replace(Char, Char, Int32, Int32)
- Źródło:
- StringBuilder.cs
- Źródło:
- StringBuilder.cs
- Źródło:
- StringBuilder.cs
Zamienia w podciąg tego wystąpienia wszystkie wystąpienia określonego znaku na inny określony znak.
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
Parametry
- oldChar
- Char
Znak do zastąpienia.
- newChar
- Char
Znak, który zastępuje oldChar.
- startIndex
- Int32
Pozycja w tym wystąpieniu, w którym rozpoczyna się podciąg.
- count
- Int32
Długość podciągów.
Zwraca
Odwołanie do tego wystąpienia z oldChar zastąpione przez newChar w zakresie od startIndex do startIndex + count -1.
Wyjątki
startIndex
+
count jest większa niż długość wartości tego wystąpienia.
-lub-
startIndex lub count jest mniejsza niż zero.
Uwagi
Ta metoda wykonuje porządkowe, wrażliwe na wielkość liter porównanie, aby zidentyfikować wystąpienia oldChar w bieżącym wystąpieniu. Rozmiar bieżącego obiektu StringBuilder jest niezmieniony po zamianie.
Dotyczy
Replace(ReadOnlySpan<Char>, ReadOnlySpan<Char>, Int32, Int32)
- Źródło:
- StringBuilder.cs
Zastępuje wszystkie wystąpienia jednego zakresu znaków tylko do odczytu innym w części tego konstruktora.
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
Parametry
- oldValue
- ReadOnlySpan<Char>
Zakres znaków tylko do odczytu do zastąpienia.
- newValue
- ReadOnlySpan<Char>
Zakres znaków tylko do odczytu, który zastąpi oldValue.
- startIndex
- Int32
Indeks do uruchomienia w tym konstruktorze.
- count
- Int32
Liczba znaków do odczytania w tym konstruktorze.
Zwraca
Uwagi
Jeśli newValue jest pusta, wystąpienia oldValue zostaną usunięte z tego konstruktora.
Dotyczy
Replace(String, String, Int32, Int32)
- Źródło:
- StringBuilder.cs
- Źródło:
- StringBuilder.cs
- Źródło:
- StringBuilder.cs
Zamienia ciąg w podciąg tego wystąpienia wszystkie wystąpienia określonego ciągu za pomocą innego określonego ciągu.
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
Parametry
- oldValue
- String
Ciąg do zastąpienia.
- newValue
- String
Ciąg, który zastępuje oldValue, lub null.
- startIndex
- Int32
Pozycja w tym wystąpieniu, w którym rozpoczyna się podciąg.
- count
- Int32
Długość podciągów.
Zwraca
Odwołanie do tego wystąpienia ze wszystkimi wystąpieniami oldValue zastąpione przez newValue w zakresie od startIndex do startIndex + count - 1.
Wyjątki
oldValue jest null.
Długość oldValue wynosi zero.
startIndex lub count jest mniejsza niż zero.
-lub-
startIndex plus count wskazuje położenie znaku, które nie mieści się w tym wystąpieniu.
-lub-
Powiększenie wartości tego wystąpienia spowodowałoby przekroczenie MaxCapacity.
Uwagi
Ta metoda wykonuje porządkowe, wrażliwe na wielkość liter porównanie, aby zidentyfikować wystąpienia oldValue w określonym podciągu. Jeśli newValue jest null lub String.Empty, wszystkie wystąpienia oldValue zostaną usunięte.