首页 > 解决方案 > 如何通过单个字符的一次或多次出现来拆分字符串

问题描述

我有一个字符串,如下所示:

string a = "foo,,,,,,,bar, baz, qux";

通常a.Split(",")可以用逗号分割字符串,但在上述情况下,由于逗号会导致许多空字符串。

有没有一种简单的方法可以通过分隔符的一次或多次出现来拆分字符串,以便结果类似于["foo","bar","baz","qux"]

标签: c#

解决方案


您可以简单地使用StringSplitOptions删除空结果。

.NET Core中,您可以将单个字符传递给string.Split并使用StringSplitOptions

var output = a.Split(',', StringSplitOptions.RemoveEmptyEntries);

.NET Framework中,您必须像这样在 char 数组 () 中传递单个 char char[]

var output = a.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);

编辑:

感谢@Innat3 和@Fildor 指出Core 和Framework 的差异。


推荐阅读