【问题标题】:C# multidimensional array into array [duplicate]C#多维数组转换成数组[重复]
【发布时间】:2020-04-28 08:00:04
【问题描述】:

我有字符串数组["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 有什么魔力?

谢谢!

【问题讨论】:

    标签: c# .net linq


    【解决方案1】:

    您可以为此使用SelectMany

    var fieldsArrays = data.SelectMany(s => s.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries));
    

    如果您确实希望将.ToArray(); 重新添加到数组中(而不是充当data 的视图),则需要在末尾添加一个.ToArray();

    Try it online

    【讨论】:

    • 这么简单?!效果很好。给这个人一杯啤酒!非常感谢(是的,我现在感觉自己像个 6 岁的孩子......)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-27
    • 1970-01-01
    • 2018-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多