В C # вы бы сделали так:
Dictionary<String, String> Split(String input)
{
if (input.Count % 2 == 0)
{
Dictionary<string, string> Pairs = new Dictionary( );
for (int L = 0, R = 1; L < input.Count && R <= input.Count; ++L, ++R)
{
Char
Left = input[L],
Right = input[R];
Pairs.Add(
Left.ToString(),
Right.ToString());
}
}
else
{
throw new NotEvenException( );
}
return Pairs( );
}
void Main()
{
var Pairs = Split("ABCDEFGH");
foreach(string Key in Split("ABCDEFGH"))
{
Console.Write("{0}{1}\n", Key, Pairs[Key]);
}
}
/*
Output:
AB
CD
EF
GH
*/
Теперь я знаю, что вы думаете: это не то, что я хочу!Но я говорю: это на самом деле, по крайней мере, частично.
Поскольку я предполагаю, что вы работаете в VB.net, основная структура того, что вы хотите выполнить, изложена в кратком фрагменте выше.
Например: метод Count (объекта String) существует как в C #, так и в VB.
Надеюсь, он хотя бы немного поможет!