Это моя исходная строка:
<box><3>
<table><1>
<chair><8>
Это мой Regex Patern:
<(?<item>\w+?)><(?<count>\d+?)>
Это мой класс Item
class Item
{
string Name;
int count;
//(...)
}
Это моя коллекция предметов;
List<Item> OrderList = new List(Item);
Я хочу заполнить этот список с помощью элемента, основанного на исходной строке. Это моя функция. Он не работает.
Regex ItemRegex = new Regex(@"<(?<item>\w+?)><(?<count>\d+?)>", RegexOptions.Compiled);
foreach (Match ItemMatch in ItemRegex.Matches(sourceString))
{
Item temp = new Item(ItemMatch.Groups["item"].ToString(), int.Parse(ItemMatch.Groups["count"].ToString()));
OrderList.Add(temp);
}
Возможно, некоторые небольшие ошибки, такие как пропуская букву, это пример, потому что это более простая версия того, что у меня есть в моем приложении.
Проблема в том, что в итоге у меня есть только один элемент в OrderList.
UPDATE
Я заработал. Thans for help.