在字符串列表中,如何按每2个字符分割并插入一个逗号

时间:2019-01-18 13:20:52

标签: c#

我有一个列表字符串,其值如下所示,请让我知道如何将列表每2个字符分隔一下,并插入逗号分隔并将最终列表分配给另一个列表。

var list1 = new List<string>() {"DVMNKL"};
var list2 = new List<string>() {"DV","MN","KL"};

有时候list1只能有2个字符,那时候我不应该拆分,我只需要分配给list2

1 个答案:

答案 0 :(得分:1)

您可以使用System.Linq进行管理。

int splitByCount = 2;
string s = new List<string> { "DVMNLS", "DVMNLS" };

var split = s.SelectMant(c => c) //flatten the list of strings to IEnumerable<char>
    .Select((c, index) => new {c, index})
    .GroupBy(x => x.index/splitByCount)
    .Select(group => group.Select(elem => elem.c))
    .Select(chars => new string(chars.ToArray()));

Console.WriteLine(string.Join(",", split));

输出

DV,MN,KL,DV,MN,KL