1. A method for generating a character-by-character alignment between a first and a second character sequence, comprising: executing on a processor instructions for aligning 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, aligning the two character sequences includes: parsing the two character sequences at a current hierarchical level into character subsequences, aligning the character subsequences, and designating 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, aligning the two character sequences includes: performing 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, identifying 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 eliminating the extra OCR text from the OCR text output.