A content search circuit for determining whether an input string matches
one or more of a plurality of regular expressions, the content search
circuit including an instruction memory for storing a plurality of
microprograms, each microprogram embodying a corresponding one of the
regular expressions, a control circuit having an input to receive the
input string, and having a number of outputs, and a plurality of search
engines, each having a first input coupled to a corresponding output of
the control circuit and having a second input coupled to the instruction
memory, wherein each search engine is selectable to execute any of the
microprograms stored in the instruction memory to search the input string
for any of the regular expressions embodied in the microprograms.