指定した文字列を削除した文字列を取得する拡張メソッドRemoveです。
拡張メソッドのソースコード
using System; namespace Extensions { static class StringExtensions { /// <summary> /// 指定された文字列を削除した文字列を取得します。 /// </summary> /// <param name="self">System.Stringのインスタンス。</param> /// <param name="value">削除する文字列。</param> /// <returns>指定された文字列を削除した文字列。</returns> public static string Remove(this string self, string value) { if (value == null) throw new ArgumentNullException(nameof(value), "値をNullにすることはできません。"); if (string.IsNullOrEmpty(self)) return self; return self.Replace(value, ""); } } }
拡張メソッドのテスト
using System; namespace Extensions { class Program { static void Main(string[] args) { string hoge1 = "abcdeabcde"; Console.WriteLine(hoge1.Remove("ab")); // cdecde try { string hoge2 = "abcdeabcde"; Console.WriteLine(hoge2.Remove(null)); } catch (Exception ex) { Console.WriteLine(ex.Message); // 値をNullにすることはできません。パラメータ名:value } string nullText = null; Console.WriteLine(nullText.Remove("a")); // 出力なし string emptyText = ""; Console.WriteLine(emptyText.Remove("a")); // 出力なし Console.ReadKey(); } } }