Ésta es mi cadena de origen:Retransmisión de expresión coincide con
<box><3>
<table><1>
<chair><8>
Esta es mi expresión regular Patern:
<(?<item>\w+?)><(?<count>\d+?)>
Ésta es mi clase de artículos
class Item
{
string Name;
int count;
//(...)
}
Esta es mi colección de artículos ;
List<Item> OrderList = new List(Item);
Quiero llenar esa lista con elementos según la cadena de origen. Esta es mi función. No funciona.
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);
}
threre puede haber algunos pequeños errores como letra que falta que este ejemplo porque se trata versión más fácil de lo que tengo en mi aplicación.
El problema es que al final solo tengo un artículo en la lista de pedidos.
ACTUALIZACIÓN
Lo tengo trabajo. Thans por ayuda.
Simplemente ejecútelo: funciona como se esperaba (3 artículos en la lista). – ChrisWue
Encontré mi error. – Hooch
¿Puedes compartirlo? Podría ayudar a alguien si se encuentra con el mismo problema. – ChrisWue