如何将字符串拆分为固定长度的字符串数组?

Yog*_*ire 4 .net vb.net string .net-1.1 split

我有一个像这样的长字符串

dim LongString as String = "123abc456def789ghi"
Run Code Online (Sandbox Code Playgroud)

我想把它拆分成一个字符串数组。数组的每个元素的长度应为 3 个字符

例如,

Dim LongArray(5) As String
LongArray(0)  = "123"
LongArray(1)  = "abc"
LongArray(2)  = "456"
LongArray(3)  = "def"
LongArray(4)  = "789"
LongArray(5)  = "ghi"
Run Code Online (Sandbox Code Playgroud)

如何使用 VB.net 代码拆分它?

Aar*_*ron 5

你可以像这样使用 LINQ:


' VB.NET
Dim str = "123abc456def789ghij"
Dim len = 3
Dim arr = Enumerable.Range(0, str.Length / len).Select (Function(x) str.Substring(x * len, len)).ToArray()


// C#
var str = "123abc456def789ghij";
var len = 3;
var arr = Enumerable.Range(0, str.Length / len).Select (x => str.Substring(x * len, len)).ToArray();

请注意,这将只需要完整出现的长度(即 10 个字符长的字符串中的 3 个集合)。

  • @Yoga 也许您应该写下您仍在使用古老的乐器! (4认同)