5

このような文字列を分割する必要があります

1052 root         0 SW<  [hwevent]

次のように

1052
root
0
SW<
[hwevent]

確かに、forループを作成して、文字インデックスを空白と比較し、オカレンスがホワイトスペースでない場合は、オカレンスを新しい文字列配列に追加することができますが、これは本当に汚い方法だと思います。

この文字列を分割する良い方法は何ですか?おそらく正規表現?

4

2 に答える 2

15

StringSplitOptions.RemoveEmptryEntriesを使用できます

string strtemp = "1052 root         0 SW<  [hwevent]";
string[] array = strtemp.Split(" ".ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
于 2012-09-12T11:55:25.227 に答える
10

はい、正規表現:

splitArray = Regex.Split(subjectString, @"\s+");

説明:

\s+一度に1つ以上の空白文字に一致するため、任意の(正の)空白文字で分割されます。

于 2012-09-12T11:54:23.760 に答える