【C#】list配列要素から””空文字(Blank)削除する

C#.NET

ad2

【C#】list配列要素から””空文字(Blank)削除する

list要素空文字削除

listを扱う場合に、要素の中に空文字削除(“”)blankが入ってることがありますよね。

データベースから引っ張ってきたデータをlistに格納する場合とか。。

そんなとき、空文字は不要な場合があり、空文字だけ削除する場合の方法を今回は、紹介します。

listメソッドのRemoveALLを使えば、簡単に任意の文字列の要素を削除したlistを作成してくれます。

ソースコード

それでは、早速コードを下記に記しました。

using System;
using System.Collections.Generic;
using System.Windows.Forms;

namespace List_blank_delete
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        /// <summary>
        /// リスト修正実行ボタン
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button1_Click(object sender, EventArgs e)
        {
            List<string> list = new List<string>();
            list.Add("りんご");
            list.Add("");
            list.Add("みかん");
            list.Add("バナナ");
            list.Add("");
            list.Add("桃");
            list.Add("");
            list.Add("");
            list.Add("ブドウ");


            //----修正前(空文字(blank)あり)------------------------------
            //リッチテキストボックスにリスト内容を列挙表示する
            foreach (string item in list)
            {
                richTextBox1.AppendText(item + "\n");
            }

            //----------------------------------------

            // リスト修正(空文字削除)処理
            list.RemoveAll(x => x == "");  //""空文字の要素は削除する処理
                                           //空文字削除を例にあげたが特定の文字列を指定してあげれば同様に削除できる
                                           


            //----修正後(空文字(blank)削除)------------------------------
            //リッチテキストボックスにリスト内容を列挙表示する
            foreach (string item in list)
            {
                richTextBox2.AppendText(item + "\n");
            }

            //----------------------------------------
        }

    }
}

 

結果

listの修正前と後を比べられるようにリッチテキストボックスを並べて配置してみました。

下図の結果を見た通り、空文字(blank)の要素だけ削除されてます。

blank_delete_res