如何在c#中将逗号分隔的括号括起(嵌套)逗号分隔值的字符串转换为列表列表?

时间:2013-10-04 10:26:08

标签: c#

给出类似

的字符串
"(5678, 2, 41, 3), (4852, 8, 3, 97), (4562, 85, 3, 7)"

如何在c#中将其转换为三个父值的List(或数组),每个父值都是其四个子值的List(或数组)?

我认为如果有意义,我想以List<List<int>>结束。

2 个答案:

答案 0 :(得分:1)

可能不是最好的解决方案,但它会起作用。这是代码:

string value = "(5678, 2, 41, 3), (4852, 8, 3, 97), (4562, 85, 3, 7)";

var result = value
               .Split(')')
               .Select(i => i.Replace('(', ' '))
               .Select(i => i.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries)
               .ToList()).ToList();

答案 1 :(得分:0)

我会使用正则表达式将字符串拆分为(p1),(p2),(p3),然后使用简单的string.Split()来访问每个父级的子值。