in reply to Regular Expression help

It sounds like you've got most of the requirements laid out already. What have you got so far and what parts aren't working?

Are you trying to parse it as a giant multiline string, or are you reading a line at a time and collecting each piece as you come across it until you've got everything you want or hit the end?

Personally, I would suggest reading a line at a time. For each line, attempt to match against each of the known types of line you want info out of.
These regexes will be simple and easy to write and maintain!
If it matches, squirrel away the captured data into a hash. Once you are done, do a check to make sure your hash contains all the necessary fields. Once you've caught them all, you can do whatever needs doing.