using System;
public class HelloWorld
{
private string[] splitCommand(string input)
{
string[] result = new string[9];
int spaceCount = 0;
int lastSpaceIndex = -1;
StringBuilder currentPart = new StringBuilder();
for (int i = 0; i < input.Length; i++)
{
if (input[i] == ' ')
{
result[spaceCount] = currentPart.ToString().Trim();
currentPart.Clear();
spaceCount++;
lastSpaceIndex = i;
}
else
{
currentPart.Append(input[i]);
}
}
result[spaceCount] = currentPart.ToString().Trim();
for (int i = 1; i + spaceCount < result.Length; i++)
{
result[i + spaceCount] = "";
}
return result;
}
string[] findParameters(string[] format, string[] instruct)
{
int[] specialIndexes = new int[4];
int index = 0;
foreach (string item in format)
{
foreach (string specialElement in specialElements)
{
if (item.Contains(specialElement))
{
specialIndexes[index] = Array.IndexOf(format, item);
index++;
break;
}
}
}
for (int i = index; i < 4; i++)
{
specialIndexes[i] = -1;
}
string[] parameters = new string[index];
for (int i = 0; i < index; i++)
{
if (specialIndexes[i] != -1)
{
parameters[i] = instruct[specialIndexes[i]];
}
}
return parameters;
}
public static void Main()
{
string format="AA BB 01 05 xx xx xx xx 03";
string str="AA BB 01 05 12 13 14 15 03";
string[]code=splitCommand(format);
string[]instruct=splitCommand(str);
string[]parameters=findParameters(code,instruct);
foreach(string parameter in parameters){
Console.WriteLine(parameter);
}
}
}