C#で文字列を置換する方法! (Replaceメソッド)

C# C#

C#で文字列を置換する方法について書いています。
文字列からReplaceメソッドを呼び出して使うことで、置換することができます。

載せているコードについては、.Netのバージョン6(C#のバージョン10)で確認しました。

Replaceメソッドの使い方

文字列からReplaceメソッドを呼び出すことで、文字列の一部を他の文字列に置換することができます。
例えば、下記のように使えます。

string fruits = "apple grape orange peach";
string replaceFruits = fruits.Replace("orange", "banana");

Console.WriteLine(replaceFruits); // apple grape banana peach

最初にfruits変数に文字列「apple grape orange peach」を代入しています。
その次の処理で、fruits変数からReplaceメソッドを呼び出しています。

Replaceメソッドの第1引数に渡しているのが、検索して置換したい文字列です。
第2引数に渡しているは、置換する文字列です。

戻り値として、置換した後の文字列が返ってきます。
置換後の文字列をreplaceFruits変数で受け取って出力しました。

置換前の「orange」が置換されて、「apple grape banana peach」が出力されました。
今回は一部の文字列ですが、対象になる文字が複数あるときには全て置換されます。

文字列を連続して置換する

Replaceメソッドは文字列を返してくるので、連続してメソッドチェーンのように使って、置換することができます。

string fruits = "apple grape orange peach";

string replaceFruits = fruits.Replace("orange", "banana")
    .Replace("grape", "lemon")
    .Replace("peach", "cherry");

Console.WriteLine(replaceFruits); // apple lemon banana cherry

先ほどと同じように、fruits変数に文字列「apple grape orange peach」を代入しています。
その後に、Replaceメソッドを3回呼び出しています。

最初に「orange」を「banana」に置換して、返ってきた文字列から「grape」を「lemon」に置換しています。
さらに返ってきた文字列から「peach」を「cherry」に置換しました。

replaceFruits変数で受け取って、出力すると「apple lemon banana cherry」になりました。
このように、指定した文字列で3回置換されました。

文字を置換する

文字列からReplaceメソッドを同じように使って、文字列ではなく、文字を指定して置換することができます。

string fruits = "xpple xpple xpple";
string replaceFruits = fruits.Replace('x', 'a');

Console.WriteLine(replaceFruits); // apple apple apple

最初にfruits変数に文字列「xpple xpple xpple"」と代入しました。
次の処理で、Replaceメソッドに文字を指定して置換しています。

第1引数に渡しているのが置換したい文字で、第2引数に渡しているのが置換する文字です。
文字列から全ての文字が置換されて戻り値として返ります。

今回は「x」を「a」に置換しました。
返ってきた文字列を出力すると「apple apple apple」になりました。

Replaceメソッドの引数と戻り値まとめ

Replaceメソッドの引数と戻り値をまとめます。

文字列を指定して置換する

対象の文字列から、特定の文字列に置換するときです。

#### 引数
第1引数に置換したい文字列で、第2引数に置換後の文字列を指定しました。

"対象文字列".Replace("置換したい文字列", "置換後の文字列");

戻り値

置換された後の文字列が戻ってきます。

文字を指定して置換する

対象の文字列から、特定の文字に置換するときです。

引数

第1引数に置換したい文字で、第2引数に置換後の文字を指定しました。

"対象文字列".Replace('置換したい文字', '置換後の文字');

戻り値

置換された後の文字列が戻ってきます。

文字列を置換する方法のまとめ

今回はC#で文字列を置換する方法について書きました。
記事の内容をまとめると、下記になります。

・文字列からReplaceメソッドを呼び出すことで置換することができる。
・Replaceメソッドに、置換したい文字列と、置換後の文字列を渡すことで置換できた。
・Replaceメソッドには、文字列指定と同様に、文字を指定して置換することができる。
・Replaceメソッドの戻り値として、置換後の文字列が返ってくる。

公式のドキュメントはこちらになります。あわせて確認してみてください。

コメント

タイトルとURLをコピーしました