StringBuilder.Replace メソッド

定義

このインスタンス内の指定した文字または文字列のすべての出現箇所を、別の指定した文字または文字列に置き換えます。

オーバーロード

名前 説明
Replace(Char, Char)

このインスタンス内の指定した文字のすべての出現箇所を、別の指定した文字に置き換えます。

Replace(String, String)

このインスタンス内の指定された文字列のすべての出現箇所を、別の指定された文字列に置き換えます。

Replace(Char, Char, Int32, Int32)

このインスタンスの部分文字列内で、指定した文字のすべての出現箇所を別の指定された文字に置き換えます。

Replace(String, String, Int32, Int32)

このインスタンスの部分文字列内で、指定した文字列のすべての出現箇所を別の指定された文字列に置き換えます。

次の例では、 Replace メソッドを示します。

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)

このインスタンス内の指定した文字のすべての出現箇所を、別の指定した文字に置き換えます。

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を置き換える文字。

返品

oldCharnewCharに置き換えた、このインスタンスへの参照。

注釈

このメソッドは、大文字と小文字を区別する序数比較を実行して、現在のインスタンス内の oldChar の発生を識別します。 現在の StringBuilder インスタンスのサイズは、置換後に変更されません。

適用対象

Replace(String, String)

このインスタンス内の指定された文字列のすべての出現箇所を、別の指定された文字列に置き換えます。

public:
 System::Text::StringBuilder ^ Replace(System::String ^ oldValue, System::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に置き換えた、このインスタンスへの参照。

例外

oldValuenullです。

oldValueの長さは 0 です。

このインスタンスの値を拡大すると、 MaxCapacityを超えます。

注釈

このメソッドは、大文字と小文字を区別する序数比較を実行して、現在のインスタンス内の oldValue の発生を識別します。 newValuenullまたはString.Emptyの場合、oldValueのすべての出現箇所は削除されます。

こちらもご覧ください

適用対象

Replace(Char, Char, Int32, Int32)

このインスタンスの部分文字列内で、指定した文字のすべての出現箇所を別の指定された文字に置き換えます。

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(String, String, Int32, Int32)

このインスタンスの部分文字列内で、指定した文字列のすべての出現箇所を別の指定された文字列に置き換えます。

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);
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

部分文字列の長さ。

返品

startIndexからstartIndex + count - 1 までの範囲のnewValueに置き換えられた、oldValueのすべてのインスタンスを含むこのインスタンスへの参照。

例外

oldValuenullです。

oldValueの長さは 0 です。

startIndex または count が 0 未満です。

-または-

startIndex プラス count は、このインスタンス内にない文字位置を示します。

-または-

このインスタンスの値を拡大すると、 MaxCapacityを超えます。

注釈

このメソッドは、大文字と小文字を区別する序数比較を実行して、指定した部分文字列内の oldValue の出現を識別します。 newValuenullまたはString.Emptyの場合、oldValueのすべての出現箇所は削除されます。

こちらもご覧ください

適用対象