c# - C#多维数组转换成数组
问题描述
我有["x3;s4;r4", "x2;s6;r7", ...]
包含某种“多维”数据的字符串数组。我做以下LINQ:
var fieldsArrays = data.Select(s => s.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries));
此查询返回真正的多维数组[["x3", "s4", "r4"], [...]]
,我需要将所有值选择为一维数组:["x3", "s4", "r4", "x2", "s6"]
请问这个LINQ魔法是什么?
谢谢!
解决方案
您可以SelectMany
为此使用:
var fieldsArrays = data.SelectMany(s => s.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries));
.ToArray();
如果您确实希望将 a 返回到数组中(而不是充当视图 over data
) ,则需要在末尾添加 a 。
推荐阅读
- google-maps - 如何在 iOS 和 android 上以 react native 实现谷歌地图?
- jquery - 重新连接到 Nodejs socket.io 服务器
- linux-kernel - 在 Linux 内核中向用户空间公开一个额外的标头
- java - 如何使用 O(n) 时间复杂度算法查找有效子字符串的数量
- binary - 将二进制文件从特定地址点填充到地址中的另一个特定地址点
- jquery - Jquery:更改 div 的内容会修改其行为
- typescript - Vue + webpack + TS:生成声明时找不到.vue.d.ts
- angular - 在 Angular 上调整 SVG 大小
- sql - 访问加入 TRANSFORM / PIVOT 查询
- java - 如何解决“使用构建器创建时客户端是不可变的”?