c# - 如何通过单个字符的一次或多次出现来拆分字符串
问题描述
我有一个字符串,如下所示:
string a = "foo,,,,,,,bar, baz, qux";
通常a.Split(",")
可以用逗号分割字符串,但在上述情况下,由于逗号会导致许多空字符串。
有没有一种简单的方法可以通过分隔符的一次或多次出现来拆分字符串,以便结果类似于["foo","bar","baz","qux"]
?
解决方案
您可以简单地使用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 的差异。
推荐阅读
- python - dlib 库不导入 anaconda
- python - Python:单独的实用程序文件或使用静态方法?
- puppeteer - puppeteer:来自 puppeteer 浏览器和用户浏览器的不同响应
- python - 我想在 Heroku 上部署一个 Django 应用程序,但出现错误
- css - WordPress CSS 未加载
- entity-framework - EFCore:Blazor Wasm 更新仅传递属性值和 Id?
- java - 将 Spring ResponseEntity 转换为 ASP.NET CORE 等效项
- ios - 在 SwiftUI View 和 ObservableObject 的 init() 中调用函数
- android - 具有自定义数据的 DatePicker 的子类
- reactjs - 如何通过代码改变一个reactjs组件的样式