This document presents a fast algorithm for multi-pattern searching that can support tens of thousands of patterns. It describes applications of the algorithm for data filtering of news, security applications searching for suspicious keywords, and DNA searching. It compares the new algorithm to existing Unix tools like egrep for regular expression searching and fgrep for fixed-string searching, and provides an example of using each tool.