一尘不染

将字符串拆分为一定大小的块

c#

假设我有一个字符串:

string str = "1111222233334444";

如何将这个字符串分成一些大小的块?

例如,将其分成4个大小将返回字符串:

"1111"
"2222"
"3333"
"4444"

阅读 318

收藏
2020-05-19

共1个答案

一尘不染

static IEnumerable<string> Split(string str, int chunkSize)
{
    return Enumerable.Range(0, str.Length / chunkSize)
        .Select(i => str.Substring(i * chunkSize, chunkSize));
}

请注意,可能需要其他代码来妥善处理边缘情况(null或输入字符串为空,chunkSize == 0不能被chunkSize等分的输入字符串长度)。最初的问题没有为这些极端情况指定任何要求,并且在现实生活中这些要求可能会有所不同,因此超出了此答案的范围。

2020-05-19