C#无循环方式将字符串拆分为多维数组或锯齿状数组

时间:2009-10-02 00:55:54

标签: c# linq

如何在不循环的情况下将字符串拆分为多维数组或锯齿状数组? 我看到一个代码片段,其中有人用文件流这样做,我无法弄清楚如何使它适用于我的字符串。 我的字符串类似于1:2;3:1;4:1,可以拆分为ID:Qty。 这是我看到的代码:

string[][] lines = File.ReadAllLines(path)
    .Select(line => line.Split(',').ToArray()).ToArray();   

提前致谢。

2 个答案:

答案 0 :(得分:8)

String s = "1:2;1:3;1:4";
String[][] f = s.Split( ';' ).Select( t => t.Split( ':' ) ).ToArray();

答案 1 :(得分:3)

MyString.Split(';').Select(s => s.Split(':'))

这会给你一个IEnumerable<IEnumerable<string>>。如果您 想要,可以致电.ToArray(),但这很少值得。