1. In a language using an alphabet having a first number of characters L forming words of a fixed length W, and a second number N of regular expressions composed only from the characters in the alphabet and the ‘?’ sign, a system for finding a set of matching regular expressions associated with a given query word, comprising: a processor; a memory; and logic configured to select a base B from 1 to W to divide the words of length W into J=W/B groups; logic configured to create a lookup table for each of the J groups, the lookup table for each of the J groups having K=L B entries, each of the K entries being a bitmap of length N; logic configured to seed each lookup table for each regular expression from I=1 to I=N; and logic configured to search each lookup table to determine the set of regular expressions that match the query word.