Отже, у мене є рядок "один-два; три-чотири; п'ять-шість"
Коли я розділяю ";" він стає масивом:
one-two three-four five-six
[0] [1] [2]
Потім foreach (рядок s у масиві), я розділяю "-", воно стає
one two three four five six
[0] [1] [0] [1] [0] [1]
Я хотів би, щоб це був такий масив:
one two three four five six
[0] [1] [2] [3] [4] [5]
Для довідки, на даний момент мій код майже такий. (Пехарпс, я повинен створити список ...?)
string pairsList="one-two;three-four;five-six";
string[] pairArray=pairsList.Split(";");
foreach(string s in pairArray)
{
string[] splitPair=s.Split(",");
}
Відповіді:
1 для відповіді № 1Ви в основному там:
string pairsList="one-two;three-four;five-six";
List<string> result = new List<string>();
string[] pairArray=pairsList.Split(";");
foreach(string s in pairArray)
{
string[] splitPair=s.Split("-");
foreach (var thing in splitPair)
{
result.add(thing);
}
}
return result.ToArray();
Ще краще: розділити на всі маркери одночасно:
string pairsList="one-two;three-four;five-six";
string[] pairArray=pairsList.Split(";", "-");
return pairArray;
2 для відповіді № 2
Ви можете просто запитати string.Split
розділити на -
так само.
string.Split
бере а params char[] separator
список аргументів, щоб ви могли просто попросити його розділити -
так само:
string[] pairArray = pairsList.Split(";", "-" );