Regex will never let me down! Pretty happy how compact i was able to make this. I wish that parse would find more than just the first case. Could have limited the number of widgets to 4! ah well, can't have everything. Fun stuff.
Instead of defaulting to regex I decided to use XML parse since I really dislike it and thought it would be a good practice. Also after scrapping a few website recently XML parsing doesn't look so bad anymore.