c# - 如何通过单个字符的一次或多次出现拆分字符串

标签 c#

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

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

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

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

最佳答案

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

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

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

.NET 框架 ,您必须在字符数组( char[] )中传递单个字符,如下所示:
var output = a.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);

编辑:

感谢@Innat3 和@Fildor 指出核心和框架的差异。

关于c# - 如何通过单个字符的一次或多次出现拆分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59178448/

相关文章:

c# - 将 SqlDataReader 移至外部函数对性能有何影响?

c# - 如何在控件中创建可编辑单元格:DataGrid in UWP?

c# - 简单的控制台应用程序测试

c# - LINQ 在选择匿名类型时包含嵌套属性

c# - 为什么 Windows 身份验证是从本地到服务器工作,而不是从服务器到服务器?

c# - 以容量列出?

c# - 如何使用 EC2 api 来判断实例状态?

c# - MigraDoc - 叠瓦/嵌套表格?

c# - C# 中模态形式和非模态形式有什么区别?

c# - 从 Excel 工作表中计算值