基于不均匀的空白数量分割字符串

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

1052 root 0 SW< [hwevent] 

进入以下

 1052 root 0 SW< [hwevent] 

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

分割这个字符串的好方法是什么? 也许是正则表达式?

您可以使用StringSplitOptions.RemoveEmptryEntries

 string strtemp = "1052 root 0 SW< [hwevent]"; string[] array = strtemp.Split(" ".ToCharArray(), StringSplitOptions.RemoveEmptyEntries); 

是的,正则表达式:

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

说明:

\s+匹配一个或多个空白字符,因此它会分割任何(正)数量的空白字符。