Sdílet prostřednictvím


StringBuilder.Replace Metoda

Definice

Nahradí všechny výskyty zadaného znaku nebo řetězce v této instanci jiným zadaným znakem nebo řetězcem.

Přetížení

Replace(Char, Char)

Nahradí všechny výskyty zadaného znaku v této instanci jiným zadaným znakem.

Replace(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

Nahradí všechny instance jednoho rozsahu znaků jen pro čtení jiným v tomto tvůrci.

Replace(String, String)

Nahradí všechny výskyty zadaného řetězce v této instanci jiným zadaným řetězcem.

Replace(Char, Char, Int32, Int32)

Nahradí v rámci podřetětěce této instance všechny výskyty zadaného znaku jiným zadaným znakem.

Replace(ReadOnlySpan<Char>, ReadOnlySpan<Char>, Int32, Int32)

Nahradí všechny instance jednoho rozsahu znaků jen pro čtení jinou částí tohoto tvůrce.

Replace(String, String, Int32, Int32)

Nahradí v rámci podřetězce této instance všechny výskyty zadaného řetězce jiným zadaným řetězcem.

Příklady

Následující příklad ukazuje Replace metoda.

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)

Zdroj:
StringBuilder.cs
Zdroj:
StringBuilder.cs
Zdroj:
StringBuilder.cs

Nahradí všechny výskyty zadaného znaku v této instanci jiným zadaným znakem.

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, který se má nahradit.

newChar
Char

Znak, který nahrazuje oldChar.

Návraty

Odkaz na tuto instanci s oldChar nahrazen newChar.

Poznámky

Tato metoda provádí řadové porovnání s rozlišováním velkých a malých písmen k identifikaci výskytů oldChar v aktuální instanci. Velikost aktuální instance StringBuilder se po nahrazení nezmění.

Platí pro

Replace(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

Zdroj:
StringBuilder.cs

Nahradí všechny instance jednoho rozsahu znaků jen pro čtení jiným v tomto tvůrci.

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>

Rozsah znaků jen pro čtení, který se má nahradit.

newValue
ReadOnlySpan<Char>

Rozsah znaků jen pro čtení, kterým se nahradí oldValue.

Návraty

Poznámky

Pokud je newValue prázdný, odeberou se z tohoto tvůrce instance oldValue.

Platí pro

Replace(String, String)

Zdroj:
StringBuilder.cs
Zdroj:
StringBuilder.cs
Zdroj:
StringBuilder.cs

Nahradí všechny výskyty zadaného řetězce v této instanci jiným zadaným řetězcem.

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

Řetězec, který chcete nahradit.

newValue
String

Řetězec, který nahrazuje oldValuenebo null.

Návraty

Odkaz na tuto instanci se všemi instancemi oldValue nahrazeno newValue.

Výjimky

oldValue je null.

Délka oldValue je nula.

Zvětšení hodnoty této instance by překročilo MaxCapacity.

Poznámky

Tato metoda provádí řadové porovnání s rozlišováním velkých a malých písmen k identifikaci výskytů oldValue v aktuální instanci. Pokud je newValuenull nebo String.Empty, odeberou se všechny výskyty oldValue.

Viz také

Platí pro

Replace(Char, Char, Int32, Int32)

Zdroj:
StringBuilder.cs
Zdroj:
StringBuilder.cs
Zdroj:
StringBuilder.cs

Nahradí v rámci podřetětěce této instance všechny výskyty zadaného znaku jiným zadaným znakem.

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, který se má nahradit.

newChar
Char

Znak, který nahrazuje oldChar.

startIndex
Int32

Pozice v této instanci, kde začíná podřetězení.

count
Int32

Délka podřetětěce.

Návraty

Odkaz na tuto instanci s oldChar nahrazený newChar v rozsahu od startIndex po startIndex + count -1.

Výjimky

startIndex + count je větší než délka hodnoty této instance.

-nebo-

startIndex nebo count je menší než nula.

Poznámky

Tato metoda provádí řadové porovnání s rozlišováním velkých a malých písmen k identifikaci výskytů oldChar v aktuální instanci. Velikost aktuálního objektu StringBuilder se po nahrazení nezmění.

Platí pro

Replace(ReadOnlySpan<Char>, ReadOnlySpan<Char>, Int32, Int32)

Zdroj:
StringBuilder.cs

Nahradí všechny instance jednoho rozsahu znaků jen pro čtení jinou částí tohoto tvůrce.

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>

Rozsah znaků jen pro čtení, který se má nahradit.

newValue
ReadOnlySpan<Char>

Rozsah znaků jen pro čtení, kterým se nahradí oldValue.

startIndex
Int32

Index, který se má spustit v tomto tvůrci.

count
Int32

Počet znaků, které se mají přečíst v tomto tvůrci

Návraty

Poznámky

Pokud je newValue prázdný, odeberou se z tohoto tvůrce instance oldValue.

Platí pro

Replace(String, String, Int32, Int32)

Zdroj:
StringBuilder.cs
Zdroj:
StringBuilder.cs
Zdroj:
StringBuilder.cs

Nahradí v rámci podřetězce této instance všechny výskyty zadaného řetězce jiným zadaným řetězcem.

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

Řetězec, který chcete nahradit.

newValue
String

Řetězec, který nahrazuje oldValuenebo null.

startIndex
Int32

Pozice v této instanci, kde začíná podřetězení.

count
Int32

Délka podřetětěce.

Návraty

Odkaz na tuto instanci se všemi instancemi oldValue nahrazenými newValue v rozsahu od startIndex do startIndex + count – 1.

Výjimky

oldValue je null.

Délka oldValue je nula.

startIndex nebo count je menší než nula.

-nebo-

startIndex plus count označuje pozici znaku, která není v této instanci.

-nebo-

Zvětšení hodnoty této instance by překročilo MaxCapacity.

Poznámky

Tato metoda provádí řadové porovnání s rozlišováním velkých a malých písmen k identifikaci výskytů oldValue v zadaném podřetědci. Pokud je newValuenull nebo String.Empty, odeberou se všechny výskyty oldValue.

Viz také

Platí pro