1. A computer-implemented method comprising: searching for a plurality of features in a set of pre-classified documents; classifying the set of pre-classified documents based on a set of current scores of each of the pre-classified documents with respect to a plurality of categories while searching for the plurality of features the set of pre-classified documents to provide information on a given setting of one or more user configurable bounds on searching; configuring a pattern matching engine based on user input, the user input comprising values of the one or more user configurable bounds on searching; using the pattern matching engine to perform a search for the plurality of features in an incoming string; updating a plurality of scores based on presence of any of the plurality of features in the string while searching for the plurality of features, wherein each of the plurality of scores indicates a likelihood of content of the string being in one of the plurality of categories; terminating the search before reaching an end of the string if the one or more user configurable bounds are met; and outputting the plurality of scores after terminating the search.