英語で読む

次の方法で共有


String.Replace メソッド

定義

現在の文字列に出現する指定した Unicode 文字または String をすべて、別の指定した Unicode 文字または String に置換した新しい文字列を返します。

オーバーロード

Replace(Char, Char)

このインスタンスに出現する指定された Unicode 文字をすべて、別の指定された Unicode 文字に置換した新しい文字列を返します。

Replace(String, String)

現在のインスタンスに出現する指定した文字列をすべて、別に指定した文字列に置換した新しい文字列を返します。

Replace(String, String, StringComparison)

指定された比較型を使用して、現在のインスタンスに出現する指定した文字列をすべて、別に指定した文字列に置換した新しい文字列を返します。

Replace(String, String, Boolean, CultureInfo)

指定されたカルチャおよび大文字と小文字の区別を使用して、現在のインスタンスに出現する指定した文字列をすべて、別に指定した文字列に置換した新しい文字列を返します。

Replace(Char, Char)

ソース:
String.Manipulation.cs
ソース:
String.Manipulation.cs
ソース:
String.Manipulation.cs

このインスタンスに出現する指定された Unicode 文字をすべて、別の指定された Unicode 文字に置換した新しい文字列を返します。

public string Replace (char oldChar, char newChar);

パラメーター

oldChar
Char

置換する Unicode 文字。

newChar
Char

出現するすべての oldChar を置換する Unicode 文字。

戻り値

oldChar のすべてのインスタンスが newChar で置き換えられることを除いて、このインスタンスと等価な文字列。 oldChar が現在のインスタンス内に見つからない場合、メソッドは現在のインスタンスを変更せずに返します。

次の例では、一連の数値の間に空白のコンマを置き換えることで、コンマ区切りの値リストを作成します。

string str = "1 2 3 4 5 6 7 8 9";
Console.WriteLine($"Original string: \"{str}\"");
Console.WriteLine($"CSV string:      \"{str.Replace(' ', ',')}\"");

// This example produces the following output:
// Original string: "1 2 3 4 5 6 7 8 9"
// CSV string:      "1,2,3,4,5,6,7,8,9"

注釈

このメソッドは、序数 (大文字と小文字を区別し、カルチャを区別しない) 検索を実行して を検索 oldCharします。

注意

このメソッドは、現在のインスタンスの値を変更しません。 代わりに、 のすべての出現 oldChar 箇所が に置き換えられる newChar新しい文字列を返します。

このメソッドは変更された文字列を返すので、メソッドの連続する呼び出しを Replace 連結して、元の文字列に対して複数の置換を実行できます。 メソッド呼び出しは、左から右に実行されます。 具体的な例を次に示します。

string s = new('a', 3);
Console.WriteLine($"The initial string: '{s}'");
s = s.Replace('a', 'b').Replace('b', 'c').Replace('c', 'd');
Console.WriteLine($"The final string: '{s}'");

// The example displays the following output:
//       The initial string: 'aaa'
//       The final string: 'ddd'

こちらもご覧ください

適用対象

.NET 9 およびその他のバージョン
製品 バージョン
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Replace(String, String)

ソース:
String.Manipulation.cs
ソース:
String.Manipulation.cs
ソース:
String.Manipulation.cs

現在のインスタンスに出現する指定した文字列をすべて、別に指定した文字列に置換した新しい文字列を返します。

public string Replace (string oldValue, string newValue);
public string Replace (string oldValue, string? newValue);

パラメーター

oldValue
String

置換される文字列。

newValue
String

出現するすべての oldValue を置換する文字列。

戻り値

oldValue のすべてのインスタンスが newValue で置き換えられることを除いて、現在の文字列と等価な文字列。 oldValue が現在のインスタンス内に見つからない場合、メソッドは現在のインスタンスを変更せずに返します。

例外

oldValuenullです。

oldValue が空の文字列 ("") です。

次の例では、 メソッドを使用 Replace してスペル ミスを修正する方法を示します。

string errString = "This docment uses 3 other docments to docment the docmentation";

Console.WriteLine($"The original string is:{Environment.NewLine}'{errString}'{Environment.NewLine}");

// Correct the spelling of "document".
string correctString = errString.Replace("docment", "document");

Console.WriteLine($"After correcting the string, the result is:{Environment.NewLine}'{correctString}'");

// This code example produces the following output:
//
// The original string is:
// 'This docment uses 3 other docments to docment the docmentation'
//
// After correcting the string, the result is:
// 'This document uses 3 other documents to document the documentation'
//

注釈

が のnull場合newValueは、 のすべての出現箇所oldValueが削除されます。

注意

このメソッドは、現在のインスタンスの値を変更しません。 代わりに、 のすべての出現 oldValue 箇所が に置き換えられる newValue新しい文字列を返します。

このメソッドは、序数 (大文字と小文字を区別し、カルチャを区別しない) 検索を実行して を検索 oldValueします。

このメソッドは変更された文字列を返すので、メソッドの連続する呼び出しを Replace 連結して、元の文字列に対して複数の置換を実行できます。 メソッド呼び出しは、左から右に実行されます。 具体的な例を次に示します。

string s = "aaa";
Console.WriteLine($"The initial string: '{s}'");
s = s.Replace("a", "b").Replace("b", "c").Replace("c", "d");
Console.WriteLine($"The final string: '{s}'");

// The example displays the following output:
//       The initial string: 'aaa'
//       The final string: 'ddd'

こちらもご覧ください

適用対象

.NET 9 およびその他のバージョン
製品 バージョン
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0

Replace(String, String, StringComparison)

ソース:
String.Manipulation.cs
ソース:
String.Manipulation.cs
ソース:
String.Manipulation.cs

指定された比較型を使用して、現在のインスタンスに出現する指定した文字列をすべて、別に指定した文字列に置換した新しい文字列を返します。

public string Replace (string oldValue, string? newValue, StringComparison comparisonType);
public string Replace (string oldValue, string newValue, StringComparison comparisonType);

パラメーター

oldValue
String

置換される文字列。

newValue
String

出現するすべての oldValue を置換する文字列。

comparisonType
StringComparison

このインスタンス内で oldValue を検索する方法を決定する列挙値の 1 つ。

戻り値

oldValue のすべてのインスタンスが newValue で置き換えられることを除いて、現在の文字列と等価な文字列。 oldValue が現在のインスタンス内に見つからない場合、メソッドは現在のインスタンスを変更せずに返します。

例外

oldValuenullです。

oldValue が空の文字列 ("") です。

注釈

が のnull場合newValueは、 のすべての出現箇所oldValueが削除されます。

注意

このメソッドは、現在のインスタンスの値を変更しません。 代わりに、 のすべての出現 oldValue 箇所が に置き換えられる newValue新しい文字列を返します。

このメソッドは、 でcomparisonType説明されているカルチャと大文字と小文字の区別を使用して検索oldValueを実行します。

このメソッドは変更された文字列を返すので、メソッドの連続する呼び出しを Replace 連結して、元の文字列に対して複数の置換を実行できます。 メソッド呼び出しは、左から右に実行されます。 具体的な例を次に示します。

string s = "aaa";
Console.WriteLine($"The initial string: '{s}'");
s = s.Replace("a", "b").Replace("b", "c").Replace("c", "d");
Console.WriteLine($"The final string: '{s}'");

// The example displays the following output:
//       The initial string: 'aaa'
//       The final string: 'ddd'

適用対象

.NET 9 およびその他のバージョン
製品 バージョン
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Standard 2.1

Replace(String, String, Boolean, CultureInfo)

ソース:
String.Manipulation.cs
ソース:
String.Manipulation.cs
ソース:
String.Manipulation.cs

指定されたカルチャおよび大文字と小文字の区別を使用して、現在のインスタンスに出現する指定した文字列をすべて、別に指定した文字列に置換した新しい文字列を返します。

public string Replace (string oldValue, string? newValue, bool ignoreCase, System.Globalization.CultureInfo? culture);
public string Replace (string oldValue, string newValue, bool ignoreCase, System.Globalization.CultureInfo culture);

パラメーター

oldValue
String

置換される文字列。

newValue
String

出現するすべての oldValue を置換する文字列。

ignoreCase
Boolean

比較するときに大文字と小文字の指定を無視するには true、それ以外の場合は false

culture
CultureInfo

比較するときに使用するカルチャ。 culturenull の場合は、現在のカルチャが使用されます。

戻り値

oldValue のすべてのインスタンスが newValue で置き換えられることを除いて、現在の文字列と等価な文字列。 oldValue が現在のインスタンス内に見つからない場合、メソッドは現在のインスタンスを変更せずに返します。

例外

oldValuenullです。

oldValue が空の文字列 ("") です。

注釈

が のnull場合newValueは、 のすべての出現箇所oldValueが削除されます。

注意

このメソッドは、現在のインスタンスの値を変更しません。 代わりに、 のすべての出現 oldValue 箇所が に置き換えられる newValue新しい文字列を返します。

このメソッドは、指定されたcultureと大文字とignoreCase小文字の区別を使用して検索oldValueを実行します。

このメソッドは変更された文字列を返すので、メソッドの連続する呼び出しを Replace 連結して、元の文字列に対して複数の置換を実行できます。 メソッド呼び出しは、左から右に実行されます。 具体的な例を次に示します。

string s = "aaa";
Console.WriteLine($"The initial string: '{s}'");
s = s.Replace("a", "b").Replace("b", "c").Replace("c", "d");
Console.WriteLine($"The final string: '{s}'");

// The example displays the following output:
//       The initial string: 'aaa'
//       The final string: 'ddd'

適用対象

.NET 9 およびその他のバージョン
製品 バージョン
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Standard 2.1