Elm*_*lmo 4 .net c# vb.net variables
我有这个:
String s = "abcd,efgh,ijkl";
Run Code Online (Sandbox Code Playgroud)
我想以编程方式将其转换为:
String[,] s = {{"ab","cd"},{"ef","gh"},{"ij","kl"}};
Run Code Online (Sandbox Code Playgroud)
该字符串可以是可变长度的。谁能告诉我该怎么做?
分成这样String[][]可以完成:
var res = s.Split(',')
.Select(p => Regex.Split(p, "(?<=\\G.{2})"))
.ToArray();
Run Code Online (Sandbox Code Playgroud)
转换为String[,]需要一个额外的循环:
var twoD = new String[res.Length,res[0].Length];
for (int i = 0 ; i != res.Length ; i++)
for (int j = 0 ; j != res[0].Length ; j++)
twoD[i,j] = res[i][j];
Run Code Online (Sandbox Code Playgroud)
2D部分要求所有以分隔的字符串,长度相同。所述res阵列的阵列,在另一方面,可以是“锯齿状的”,即行可以有不同的长度。