As a general rule, trying to parse XML with a regexp is not a very good idea. Why don't you try any of the XML modules you can find on CPAN? You can start, for example, with XML::Simple
and I thought it was easy.. But when it came to matching more than one occurences of the same element (Author), I cannot do it... I think it has something to do with objects or something like that and I do not have a clue in this area...