Patent ID: 7499941

Claim:
An apparatus for identifying whether or not a sequence of characters matches a regular expression, the apparatus comprising: a plurality of regular expression matching stages connected together in a pipeline manner, with each of said regular expression matching stages corresponding to a different sequential portion of the regular expression; wherein said regular expression matching stages include a first stage followed by a plurality of middle stages followed by a final stage; wherein each of said regular expression matching stages is configured to receive characters in the sequence of characters and to process said received characters in order to identify whether or not a current character in the sequence of characters results in a match of said regular expression matching stage's respective said portion of the regular expression; wherein the first stage is configured to indicate to a first middle stage of said middle stages in said pipeline of the regular expression matching stages when said first stage said identifies that the current character results in a match of the first stage's respective said portion of the regular expression; wherein each middle stage of said middle stages is configured to indicate to a next stage in said pipeline of the regular expression matching stages when said middle stage said identifies that the current results in a match of said middle stage's respective said portion of the regular expression and all previous stages in said pipeline of the regular expression matching stages have identified that corresponding previous characters in the sequence of characters have resulted in matching corresponding said portions of the regular expression; and the final stage is configured to indicate when the final stage matches the current character and all previous stages in said pipeline of the regular expression matching stages have identified that corresponding previous characters in the sequence of characters have resulted in matching corresponding said portions of the regular expression so as to identify that the regular expression is matched by the sequence of characters.