in reply to Matching range of text with another string in between
XML::ASCX12 may be useful, although it looks like you have processed data to play with rather than the raw XML.