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メソッドの戻り値として、置換後の文字列が返ってくる。
公式のドキュメントはこちらになります。あわせて確認してみてください。
コメント