首页 > 解决方案 > 每隔指定次数将字符串值拆分为数组的更简单方法是什么?

问题描述

每隔指定次数将字符串值拆分为数组的最有效方法是什么?例如,除以 2:

string test = "12345678";

至:

string[] test = new[] {"12", "34", "56"};

我试过的:

double part = 2;
int k = 0;
var test = bin.ToLookup(c => Math.Floor(k++ / part)).Select(e => new string(e.ToArray()));

标签: c#

解决方案


您可以使用 LINQ :当长度是部分的长度时

var str = "12345678";
var length = 2;
var result = Enumerable.Range(0, (str.Length + length - 1) / length)
.Select(i => str.Substring(i * length, Math.Min(str.Length - i *length, 
length)));

推荐阅读