19. The system of claim 18 wherein the hierarchical levels include the first, a second, and the final hierarchical level, and the character subsequences corresponding to the second hierarchical level are words.
18. A system for generating a character-by-character alignment between a first and a second character sequence representing text in a source, comprising: a computer processor that is operable to execute a computer program product tangibly embodied in a computer-readable storage medium, the computer program product being operable to cause the computer processor to: align the two character sequences in a hierarchical manner utilizing a plurality of hierarchical levels, wherein the first character sequence is an optical character recognition (OCR) text output of a document, and the second character sequence is a separate electronic version of the document, and wherein: for a first hierarchical level, unique words of the second character sequence are aligned with corresponding words of the first character sequence and unique word anchors for a lower hierarchical level are designated; for each hierarchical level below the first hierarchical level and above a final hierarchical level, the computer program product is operable to cause the computer processor to: parse the two character sequences at a current hierarchical level into character subsequences, align the character subsequences, and designate the character subsequences at the current hierarchical level as anchors, the parsing of the character sequences and aligning of the character subsequences being performed between the anchors generated from an immediately previous hierarchical level if the current hierarchical level is below the first hierarchical level; and for the final hierarchical level, the computer program product is operable to cause the computer processor to: perform character-by-character alignment between the first character sequence and the second character sequence by aligning each character in the first character sequence at the final hierarchical level to each respective character in the second character sequence at the final hierarchical level, each of the characters being between anchors generated from an immediately previous hierarchical level, and identify extra OCR text, the extra OCR text comprising text that is included in the first character sequence and that is not included in the second character sequence, and eliminate the extra OCR text from the OCR text output.