[C# string] 文字列内の文字を置き換える(置換)

文字列内の文字を違う文字に置き換えるにはReplaceメソッドを使います。

第1引数に置き換えられる文字列、
第2引数に置き換える文字列を指定します。

Replaceメソッドの戻り値は置き換えられた文字列になり、元の文字列は変わりません。
置き換えられる文字が見つからない場合は元と同じ文字列が返ってきます。
\n“で改行を置き換えることもできます。

using System;
class Program
{
    public static void Main()
    {
        string str1 = "abcdef-abcdef-ABCDEF";

        // bcdをxyzに置き換える
        string str2 = str1.Replace("bcd", "xyz");
        Console.WriteLine($"置換後の文字列={str2}");

        // 元の文字列は変わらない
        Console.WriteLine($"元の文字列  ={str1}");
    }
}
置換後の文字列=axyzef-axyzef-ABCDEF
元の文字列  =abcdef-abcdef-ABCDEF

複数置き換えたい文字がある場合、Replaceをつないで実行します。

using System;
class Program
{
    public static void Main()
    {
        string str1 = "@,b,@,d,e,@";

        // ,を半角スペースに置換した文字列の@を#に置き換える
        string str2 = str1.Replace(",", " ").Replace("@", "#");
        Console.WriteLine(str2);
    }
}
# b # d e #

C# プログラミング講座に戻る

コメント

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