12. A data processing apparatus for identifying a document within a block of text, comprising: a processor configured to: (i) tokenize a block of text into a plurality of text tokens according to at least one rule parser; (ii) compare each of the plurality of text tokens to a plurality of document tokens sequentially and determine if a text token matches one of the plurality of document tokens, wherein the plurality of document tokens correspond to one or more of a plurality of documents which have been tokenized according to the at least one rule parser; (iii) filter each matched text token according to predetermined filtering criteria to generate one or more candidate text tokens; and (iv) match a sequence of candidate text tokens from the one or more candidate text tokens to a sequence of document tokens, wherein the sequence of candidate text tokens occur in sequential order within the block of text.
12. A data processing apparatus for identifying a document within a block of text, comprising: a processor configured to: (i) tokenize a block of text into a plurality of text tokens according to at least one rule parser; (ii) compare each of the plurality of text tokens to a plurality of document tokens sequentially and determine if a text token matches one of the plurality of document tokens, wherein the plurality of document tokens correspond to one or more of a plurality of documents which have been tokenized according to the at least one rule parser; (iii) filter each matched text token according to predetermined filtering criteria to generate one or more candidate text tokens; and (iv) match a sequence of candidate text tokens from the one or more candidate text tokens to a sequence of document tokens, wherein the sequence of candidate text tokens occur in sequential order within the block of text. 17. A data processing apparatus according to claim 12 , wherein the processor is further configured to notify a user of (i) a matched document corresponding to the sequence of document tokens which match the sequence of candidate text tokens, and (ii) a position of the matched document within the block of text.