String.SplitメソッドStringSplitOptions.TrimEntriesを指定すると、分割によって各要素の前後に空白が生じる場合に、それを削除することができます。 これは、Splitメソッドで分割した後に個々の要素に対してString.Trimメソッドを呼び出し、前後の空白を削除するのと同じ動作となります。

StringSplitOptions.TrimEntriesは.NET 5以降で使用できます。

StringSplitOptions.TrimEntriesを指定して各要素の前後の空白を削除して文字列を分割する .NET 5
using System;

class Sample {
  static void Main()
  {
    var s = " field1,   field2 ,field3  "; // カンマ区切りの文字列(各カラムの前後に余白を含む)

    // 文字','を区切りとして分割し、各要素の前後の空白を除去する
    Console.WriteLine($"[{nameof(StringSplitOptions.TrimEntries)}]");

    var fields = s.Split(',', StringSplitOptions.TrimEntries);

    foreach (var field in fields) {
      Console.WriteLine("<{0}>", field);
    }
    Console.WriteLine();

    // 文字','を区切りとして分割する (各要素の前後の空白はそのままにする)
    Console.WriteLine($"[{nameof(StringSplitOptions.None)}]");

    fields = s.Split(',', StringSplitOptions.None);

    foreach (var field in fields) {
      Console.WriteLine("<{0}>", field);
    }
  }
}
実行結果
[TrimEntries]
<field1>
<field2>
<field3>

[None]
< field1>
<   field2 >
<field3  >

なお、このオプションではString.Trimメソッドと同様にChar.IsWhiteSpacetrueとなる空白文字が削除されます。 空白文字には改行文字等も含まれます。

MENTAにてテキストチャットによるサポートを行っています。 問題の解決法をお探しの方や.NET/C#を学習中の方はどうぞご利用ください。