A system for processing regular expressions containing one or more
sub-expressions. Information regarding one or more regular expressions,
each containing one or more sub-expressions, is stored. Data is compared
to the stored information regarding expressions in only a single pass
through the data. From the comparison, for any stored expression, the
location within the data of the beginning and end of each sub-expression,
and the end of the regular expression, are determined. From such
determination, the presence within the data of any one or more stored
regular expressions containing one or more sub-expressions is identified.