はじめに
まずはC#のRemoveメソッドについて基本的な情報をお伝えしましょう。
C#のRemoveメソッドは、文字列やリスト、配列などから特定の要素を取り除くための方法です。具体的には文字列からは特定の位置からの文字を取り除き、リストや配列からは指定した要素を取り除きます。
今回は、これらの使用方法と例を紹介していきます。

KindleUnlimited会員であれば、全ての本をご覧頂けます。 Linqを理解すれば、C#プログラミングの世界が変わる 第1版
-188x300.jpg)
文字列から文字を削除する
まずは文字列から特定の位置からの文字を削除する例を見てみましょう。Removeメソッドを用いて、文字列中の特定の位置から指定した数だけ文字を削除できます。
以下に具体的なコード例を示します。
ソースコード例
1 2 3 4 5 6 7 8 9 10 11 |
using System; public class Program { public static void Main() { string str = "Hello, World!"; str = str.Remove(5, 1); Console.WriteLine(str); } } |
このコードでは、"Hello, World!"という文字列から、5番目の位置(0から数える)の文字(この場合はカンマ)を削除しています。出力結果を見てみましょう。
出力結果
Hello World!

リストから要素を削除する
次に、リストから特定の要素を削除する例を見てみましょう。
以下に具体的なコード例を示します。
ソースコード例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
using System; using System.Collections.Generic; public class Program { public static void Main() { List<string> names = new List() { "John", "Mary", "Peter", "Lucy" }; names.Remove("Peter"); foreach (string name in names) { Console.WriteLine(name); } } } |
このコードでは、リスト内の要素 "Peter" をRemoveメソッドで削除しています。出力結果を見てみましょう。
出力結果
John Mary Lucy

Removeメソッドの注意点
Removeメソッドは非常に便利ですが、いくつか注意点があります。
文字列のRemoveメソッドは元の文字列を変更しないこと、削除しようとした要素が存在しない場合の挙動が異なることに注意が必要です。
具体的なコード例を示します。
ソースコード例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
using System; using System.Collections.Generic; public class Program { public static void Main() { string str = "Hello, World!"; string newStr = str.Remove(5, 1); Console.WriteLine("Old string: " + str); Console.WriteLine("New string: " + newStr); List<string> names = new List() { "John", "Mary", "Peter", "Lucy" }; bool removed = names.Remove("Mike"); Console.WriteLine("Removed: " + removed); } } |
このコードでは、文字列のRemoveメソッドが元の文字列を変更しないこと、リストのRemoveメソッドが要素を削除できなかった場合にfalseを返すことを示しています。出力結果を見てみましょう。
出力結果
Old string: Hello, World! New string: Hello World! Removed: False

RemoveAllメソッドについて
さて、リストから特定の条件を満たす要素を全て削除したい場合はどうすれば良いでしょうか。
この場合は、RemoveAllメソッドを利用します。このメソッドは引数として条件を示すPredicate<T>を受け取り、その条件を満たす全ての要素をリストから削除します。
次のコード例を見てみましょう。
ソースコード例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
using System; using System.Collections.Generic; public class Program { public static void Main() { List<int> numbers = new List() { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; numbers.RemoveAll(num => num % 2 == 0); foreach (int num in numbers) { Console.WriteLine(num); } } } |
このコードでは、リスト内の偶数を全て削除しています。出力結果を見てみましょう。
出力結果
1 3 5 7 9

まとめ
以上がC#のRemoveメソッドについての解説です。
Removeメソッドはリストや文字列から特定の要素を削除するための便利なツールですが、使用する際は挙動の違いに注意が必要です。
また、特定の条件を満たす全ての要素を削除する場合はRemoveAllメソッドを使用します。
これらのメソッドをうまく使いこなして、より効率的なプログラムを書いてみてください。
最後まで読んで頂き、ありがとうございました。少しでもお役にたてたなら幸いです!
