The problem with Apache::ParseLog is that all it does is generate reports and stuff. I need something that will allow me break up the line so i can insert it into a database where we are then going to crunch for these patterns that we are looking for.
gwadej's suggestion of Apache::LogRegex might fit your bill - I scanned the documentation and it's probably worth a few minutes of effort. Barring that, it might be worth it to incrementally add characters to your match expression (probably while doing some of the suggested reformatting) until the match fails.