5

我需要拆分一个看起来像这样的字符串

1052 root         0 SW<  [hwevent]

进入以下

1052
root
0
SW<
[hwevent]

当然,我可以创建一个 forloop 并将字符索引与空格进行比较,当出现不是空格时,将出现添加到新的字符串数组中,但我觉得这是一种非常肮脏的方法。

拆分此字符串的好方法是什么?也许是正则表达式?

4

2 回答 2

15

You may use 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+一次匹配一个或多个空白字符,因此它会根据任意(正)个空白字符进行拆分。

于 2012-09-12T11:54:23.760 回答