将多个空白字符视为单个分隔符

本文关键字:单个 分隔符 字符 空白 | 更新日期: 2023-09-27 18:08:10

当方法String.Split(null)在一行中遇到许多空白字符时,它将每个空白字符作为分隔符。

所以对于下面的字符串a b c d,结果是:

{"a", "b", "c", , , "d"}   // for string[] res = "a b c   d".Split(null);

是否有可能使String.Split(null)将许多空白字符视为单个分隔符?有没有别的方法可以做到这一点?

也就是说,有没有一种方法可以达到这个结果:

{"a", "b", "c", "d"}

在我去重新发明轮子之前(编写我自己的方法将多个空白字符转换为单个字符,然后使用String.Split(null)),我想检查是否有一个现有的方法,将为我做这件事。

将多个空白字符视为单个分隔符

您需要将此StringSplitOptions.RemoveEmptyEntries添加到Split方法中。枚举

中有一个重载对象。
yourString.Split(null, StringSplitOptions.RemoveEmptyEntries)

您需要通过StringSplitOptions.RemoveEmptyEntries。这将删除列表中的额外条目。为了保持默认的(即空白)分割,你可以继续传递null作为第一个参数,例如:

"a b c   d".Split((char[])null, StringSplitOptions.RemoveEmptyEntries)