Compartir a través de


StringBuilder.Replace Método

Definición

Reemplaza todas las apariciones de un carácter o cadena especificados en esta instancia por otro carácter o cadena especificados.

Sobrecargas

Replace(Char, Char)

Reemplaza todas las apariciones de un carácter especificado en esta instancia por otro carácter especificado.

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

Reemplaza todas las instancias de un intervalo de caracteres de solo lectura por otro en este generador.

Replace(String, String)

Reemplaza todas las apariciones de una cadena especificada en esta instancia por otra cadena especificada.

Replace(Char, Char, Int32, Int32)

Reemplaza, dentro de una subcadena de esta instancia, todas las apariciones de un carácter especificado por otro carácter especificado.

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

Reemplaza todas las instancias de un intervalo de caracteres de solo lectura por otro en parte de este generador.

Replace(String, String, Int32, Int32)

Reemplaza, dentro de una subcadena de esta instancia, todas las apariciones de una cadena especificada por otra cadena especificada.

Ejemplos

En el ejemplo siguiente se muestra el método 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)

Source:
StringBuilder.cs
Source:
StringBuilder.cs
Source:
StringBuilder.cs

Reemplaza todas las apariciones de un carácter especificado en esta instancia por otro carácter especificado.

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

Parámetros

oldChar
Char

Carácter que se va a reemplazar.

newChar
Char

Carácter que reemplaza oldChar.

Devoluciones

Referencia a esta instancia con oldChar reemplazado por newChar.

Comentarios

Este método realiza una comparación ordinal con distinción entre mayúsculas y minúsculas para identificar las apariciones de oldChar en la instancia actual. El tamaño de la instancia de StringBuilder actual no cambia después del reemplazo.

Se aplica a

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

Source:
StringBuilder.cs

Reemplaza todas las instancias de un intervalo de caracteres de solo lectura por otro en este generador.

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

Parámetros

oldValue
ReadOnlySpan<Char>

Intervalo de caracteres de solo lectura que se va a reemplazar.

newValue
ReadOnlySpan<Char>

Intervalo de caracteres de solo lectura por el que se va a reemplazar oldValue.

Devoluciones

Comentarios

Si newValue está vacío, las instancias de oldValue se quitan de este generador.

Se aplica a

Replace(String, String)

Source:
StringBuilder.cs
Source:
StringBuilder.cs
Source:
StringBuilder.cs

Reemplaza todas las apariciones de una cadena especificada en esta instancia por otra cadena especificada.

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

Parámetros

oldValue
String

Cadena que se va a reemplazar.

newValue
String

Cadena que reemplaza oldValueo null.

Devoluciones

Referencia a esta instancia con todas las instancias de oldValue reemplazadas por newValue.

Excepciones

oldValue es null.

La longitud de oldValue es cero.

Al ampliar el valor de esta instancia, se superaría MaxCapacity.

Comentarios

Este método realiza una comparación ordinal con distinción entre mayúsculas y minúsculas para identificar las apariciones de oldValue en la instancia actual. Si newValue es null o String.Empty, se quitan todas las apariciones de oldValue.

Consulte también

Se aplica a

Replace(Char, Char, Int32, Int32)

Source:
StringBuilder.cs
Source:
StringBuilder.cs
Source:
StringBuilder.cs

Reemplaza, dentro de una subcadena de esta instancia, todas las apariciones de un carácter especificado por otro carácter especificado.

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

Parámetros

oldChar
Char

Carácter que se va a reemplazar.

newChar
Char

Carácter que reemplaza oldChar.

startIndex
Int32

Posición en esta instancia donde comienza la subcadena.

count
Int32

Longitud de la subcadena.

Devoluciones

Referencia a esta instancia con oldChar reemplazado por newChar en el intervalo de startIndex a startIndex + count -1.

Excepciones

startIndex + count es mayor que la longitud del valor de esta instancia.

-o-

startIndex o count es menor que cero.

Comentarios

Este método realiza una comparación ordinal con distinción entre mayúsculas y minúsculas para identificar las apariciones de oldChar en la instancia actual. El tamaño del objeto StringBuilder actual no cambia después del reemplazo.

Se aplica a

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

Source:
StringBuilder.cs

Reemplaza todas las instancias de un intervalo de caracteres de solo lectura por otro en parte de este generador.

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

Parámetros

oldValue
ReadOnlySpan<Char>

Intervalo de caracteres de solo lectura que se va a reemplazar.

newValue
ReadOnlySpan<Char>

Intervalo de caracteres de solo lectura por el que se va a reemplazar oldValue.

startIndex
Int32

Índice que se va a iniciar en este generador.

count
Int32

Número de caracteres que se van a leer en este generador.

Devoluciones

Comentarios

Si newValue está vacío, las instancias de oldValue se quitan de este generador.

Se aplica a

Replace(String, String, Int32, Int32)

Source:
StringBuilder.cs
Source:
StringBuilder.cs
Source:
StringBuilder.cs

Reemplaza, dentro de una subcadena de esta instancia, todas las apariciones de una cadena especificada por otra cadena especificada.

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

Parámetros

oldValue
String

Cadena que se va a reemplazar.

newValue
String

Cadena que reemplaza oldValueo null.

startIndex
Int32

Posición en esta instancia donde comienza la subcadena.

count
Int32

Longitud de la subcadena.

Devoluciones

Referencia a esta instancia con todas las instancias de oldValue reemplazadas por newValue en el intervalo de startIndex a startIndex + count - 1.

Excepciones

oldValue es null.

La longitud de oldValue es cero.

startIndex o count es menor que cero.

-o-

startIndex más count indica una posición de carácter que no está dentro de esta instancia.

-o-

Al ampliar el valor de esta instancia, se superaría MaxCapacity.

Comentarios

Este método realiza una comparación ordinal con distinción entre mayúsculas y minúsculas para identificar las apariciones de oldValue en la subcadena especificada. Si newValue es null o String.Empty, se quitan todas las apariciones de oldValue.

Consulte también

Se aplica a