【C#入門】文字列を削除する方法総まとめ(Remove)

こんにちは!エンジニアの中沢です。

C#には文字列のインデックスを指定したり、指定文字列を検索して削除をするための方法がいくつかがあります。そこで今回は、文字列を削除する様々な方法をまとめて解説します。

この記事では、

  • 文字列の削除とは
  • StringクラスのRemoveメソッドで削除

という基本的な内容から、

  • StringクラスのSubstringメソッドで抜き出す
  • StringクラスのTrimメソッドで文頭、文末を削除
  • StringクラスのReplaceメソッドで置換
  • StringBuilderクラスのRemoveメソッドで削除

などの応用的な使い方に関しても解説していきます。今回はこれらの方法を覚えるために、文字列を削除するさまざまな使い方をわかりやすく解説します!

文字列の削除とは

文字列の削除には、目的に応じていろいろな方法があります。削除した文字列のインデックスを指定して削除する方法や、削除したい文字列を指定する方法などがあります。

この記事では基本的な削除の方法から応用的な削除の方法までまとめて解説します。

StringクラスのRemoveメソッドで削除

最も基本的な方法として、StringクラスのRemoveメソッドで削除する方法があります。Removeメソッドは第1引数で削除する文字列の開始位置をインデックス番号で指定し、第2引数で削除する文字数を指定します。

Removeメソッドの使い方を次のプログラムで確認してみましょう。

using System;

namespace Sample
{
    class Sample
    {
        static void Main()
        {
            string str1 = "侍エンジニア塾";
            string str2 = str1.Remove(1, 5);

            Console.WriteLine(str1);
            Console.WriteLine(str2);

            Console.ReadKey();
        }
    }
}

実行結果:

侍エンジニア塾
侍塾

StringクラスのSubstringメソッドで抜き出す

StringクラスのSubstringメソッドを使って必要な部分を抜き出すことで、余計な部分を削除して使うことができます。第1引数に抜き出す文字列の開始位置を0から指定します。

第2引数に抜き出す文字数を指定します。第2引数を省略すると、末尾まで抜き出します。次のプログラムで確認してみましょう。

using System;

namespace Sample
{
    class Sample
    {
        static void Main()
        {
            string str = "侍エンジニア塾";
            Console.WriteLine(str.Substring(0, 1));
            Console.WriteLine(str.Substring(1, 5));
            Console.WriteLine(str.Substring(6));

            Console.ReadKey();
        }
    }
}

実行結果:

侍
エンジニア
塾

Substringメソッドの詳しい使い方はこちらの記事で解説しているで、ぜひ確認してください。

【C#入門】String.Substringで文字列の指定部分を抜き出す方法
更新日 : 2019年4月19日

StringクラスのTrimメソッドで文頭、文末を削除

StringクラスのTrimメソッドは、文字列の先頭と末尾に付いている空白文字や指定文字を削除するために使います。Trimメソッドは引数を指定せずに使うと、半角、全角のスペース文字、タブ文字、改行文字などを削除します。

次のプログラムで確認してみましょう。

using System;

namespace Sample
{
    class Sample
    {
        static void Main()
        {
            string str = "\t 侍エンジニア塾 \r\n";

            Console.WriteLine(str.Trim());
            Console.ReadKey();
        }
    }
}

実行結果:

侍エンジニア塾

Trimメソッドの詳しい使い方はこちらの記事で解説しているで、ぜひ確認してください。

【C#入門】Trimで文頭、文末の文字を削除(TrimStart、TrimEndも解説)
更新日 : 2019年5月3日

StringクラスのReplaceメソッドで置換

Replaceメソッドは、文字列を検索して条件に一致する部分を置換するために使用します。Replaceメソッドは第1引数に置換前の文字列を指定します。

第2引数に置換後の文字列を指定します。戻り値は置換後の文字列です。置換後の文字列に空文字(“”)を指定すれば削除することができます。次のプログラムで確認してみましょう。

using System;

namespace Sample
{
    class Program
    {
        static void Main(string[] args)
        {
            string str1 = " sa mu  ra i ";
            string str2 = str1.Replace(" ", "");

            Console.WriteLine(str1);
            Console.WriteLine(str2);

            Console.ReadKey();
        }
    }
}

実行結果:

 sa mu  ra i
samurai

Replaceメソッドの詳しい使い方はこちらの記事で解説しているで、ぜひ確認してください。

StringBuilderクラスのRemoveメソッドで削除

StringBuilderクラスにもRemoveメソッドがあります。Removeメソッドは、第1引数で削除する文字列の開始位置をインデックス番号で指定し、第2引数で削除する文字数を指定します。

次のプログラムで確認してみましょう。

using System;
using System.Text;

namespace Sample
{
    class Sample
    {
        static void Main()
        {
            StringBuilder sb = new StringBuilder("侍エンジニアengineer塾");
            Console.WriteLine(sb.Remove(6, 8));

            Console.ReadKey();
        }
    }
}

実行結果:

侍エンジニア塾

Removeメソッドの詳しい使い方はこちらの記事で解説しているで、ぜひ確認してください。

まとめ

いかがでしたか?今回は文字列を削除する様々な方法を解説しました。文字列を削除する方法はいくつかあるので、状況に応じて使い分けてくださいね。

もし、文字列を削除する方法を忘れてしまったらこの記事を確認してください!

LINEで送る
Pocket

SEからWebエンジニアへ転職した理由

侍エンジニア塾卒業生の小池さんは、以前は社内SEとして約5年ほど勤務していました。しかし業務内容は社内のヘルプデスク対応など、プログラムを書く仕事は全くなかったそうです。

SEながらプログラムを書けない現状に「将来仕事がなくなるんじゃないか」と不安を感じ、プログラミング学習を決意。

弊社スクールで学習し、無事ベンチャー企業のプログラマーとして転職に成功しました。そんな小池さんの学習法や転職体験談を伺いましたので、是非ご覧ください。

「プログラミングができないSEは仕事がなくなる」不安を感じたSEが未経験から転職成功するまで
更新日 : 2019年10月7日

書いた人

中沢 丈

中沢 丈

フリーランスエンジニア。
システム開発からコンテンツ作成まで幅広く対応します。

連絡先はこちらです。
[email protected]

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説