다음을 통해 공유


StringBuilder.Replace 메서드

정의

이 인스턴스에서 지정된 문자 또는 문자열의 모든 항목을 지정된 다른 문자 또는 문자열로 대체합니다.

오버로드

Replace(Char, Char)

이 인스턴스에서 지정된 문자의 모든 항목을 지정된 다른 문자로 대체합니다.

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

한 읽기 전용 문자 범위의 모든 인스턴스를 이 작성기의 다른 인스턴스로 대체합니다.

Replace(String, String)

이 인스턴스에서 지정된 문자열의 모든 항목을 지정된 다른 문자열로 대체합니다.

Replace(Char, Char, Int32, Int32)

이 인스턴스의 부분 문자열 내에서 지정된 문자의 모든 항목을 다른 지정된 문자로 대체합니다.

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

읽기 전용 문자 범위의 모든 인스턴스를 이 작성기의 일부로 대체합니다.

Replace(String, String, Int32, Int32)

이 인스턴스의 부분 문자열 내에서 지정된 문자열의 모든 항목을 지정된 다른 문자열로 대체합니다.

예제

다음 예제에서는 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

이 인스턴스에서 지정된 문자의 모든 항목을 지정된 다른 문자로 대체합니다.

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

매개 변수

oldChar
Char

바꿀 문자입니다.

newChar
Char

oldChar대체하는 문자입니다.

반환

oldChar newChar대체된 이 인스턴스에 대한 참조입니다.

설명

이 메서드는 대/소문자를 구분하는 서수 비교를 수행하여 현재 인스턴스에서 oldChar 발생을 식별합니다. 현재 StringBuilder 인스턴스의 크기는 교체 후에 변경되지 않습니다.

적용 대상

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

Source:
StringBuilder.cs

한 읽기 전용 문자 범위의 모든 인스턴스를 이 작성기의 다른 인스턴스로 대체합니다.

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

매개 변수

oldValue
ReadOnlySpan<Char>

바꿀 읽기 전용 문자 범위입니다.

newValue
ReadOnlySpan<Char>

oldValue 바꿀 읽기 전용 문자 범위입니다.

반환

설명

newValue 비어 있으면 이 작성기에서 oldValue 인스턴스가 제거됩니다.

적용 대상

Replace(String, String)

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

이 인스턴스에서 지정된 문자열의 모든 항목을 지정된 다른 문자열로 대체합니다.

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

매개 변수

oldValue
String

바꿀 문자열입니다.

newValue
String

oldValue대체하거나 null문자열입니다.

반환

모든 oldValue 인스턴스가 newValue대체된 이 인스턴스에 대한 참조입니다.

예외

oldValue null.

oldValue 길이는 0입니다.

이 인스턴스의 값을 확대하면 MaxCapacity초과됩니다.

설명

이 메서드는 대/소문자를 구분하는 서수 비교를 수행하여 현재 인스턴스에서 oldValue 발생을 식별합니다. newValue null 또는 String.Empty경우 모든 oldValue 제거됩니다.

추가 정보

적용 대상

Replace(Char, Char, Int32, Int32)

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

이 인스턴스의 부분 문자열 내에서 지정된 문자의 모든 항목을 다른 지정된 문자로 대체합니다.

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

매개 변수

oldChar
Char

바꿀 문자입니다.

newChar
Char

oldChar대체하는 문자입니다.

startIndex
Int32

부분 문자열이 시작되는 이 인스턴스의 위치입니다.

count
Int32

부분 문자열의 길이입니다.

반환

startIndex에서 startIndex + count -1까지의 범위에서 newChar 대체된 oldChar 있는 이 인스턴스에 대한 참조입니다.

예외

startIndex + count 이 인스턴스 값의 길이보다 큽합니다.

-또는-

startIndex 또는 count 0보다 작습니다.

설명

이 메서드는 대/소문자를 구분하는 서수 비교를 수행하여 현재 인스턴스에서 oldChar 발생을 식별합니다. 현재 StringBuilder 개체의 크기는 교체 후에 변경되지 않습니다.

적용 대상

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

Source:
StringBuilder.cs

읽기 전용 문자 범위의 모든 인스턴스를 이 작성기의 일부로 대체합니다.

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

매개 변수

oldValue
ReadOnlySpan<Char>

바꿀 읽기 전용 문자 범위입니다.

newValue
ReadOnlySpan<Char>

oldValue 바꿀 읽기 전용 문자 범위입니다.

startIndex
Int32

이 작성기에서 시작할 인덱스입니다.

count
Int32

이 작성기에서 읽을 문자 수입니다.

반환

설명

newValue 비어 있으면 이 작성기에서 oldValue 인스턴스가 제거됩니다.

적용 대상

Replace(String, String, Int32, Int32)

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

이 인스턴스의 부분 문자열 내에서 지정된 문자열의 모든 항목을 지정된 다른 문자열로 대체합니다.

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

매개 변수

oldValue
String

바꿀 문자열입니다.

newValue
String

oldValue대체하거나 null문자열입니다.

startIndex
Int32

부분 문자열이 시작되는 이 인스턴스의 위치입니다.

count
Int32

부분 문자열의 길이입니다.

반환

oldValue 모든 인스턴스가 startIndex부터 startIndex + count - 1까지의 범위에서 newValue 대체된 이 인스턴스에 대한 참조입니다.

예외

oldValue null.

oldValue 길이는 0입니다.

startIndex 또는 count 0보다 작습니다.

-또는-

startIndex 더하기 count 이 인스턴스 내에 없는 문자 위치를 나타냅니다.

-또는-

이 인스턴스의 값을 확대하면 MaxCapacity초과됩니다.

설명

이 메서드는 지정된 부분 문자열에서 oldValue 발생을 식별하기 위해 서수 대/소문자를 구분하는 비교를 수행합니다. newValue null 또는 String.Empty경우 모든 oldValue 제거됩니다.

추가 정보

적용 대상