<p>What do I use to search for multiple words in a string?  I would like the logical operation to be AND so that all the words are in the string somewhere.  I have a bunch of nonsense paragraphs and one plain English paragraph, and I'd like to narrow it down by specifying a couple common words like, "the" and "and", but would like it match all words I specify.</p>

Assuming PCRE (Perl regexes), I am not sure that you can do it at all easily.  The AND operation is concatenation of regexes, but you want to be able to permute the order in which the words appear without having to formally generate the permutation.  For N words, when N = 2, it is bearable; with N = 3, it is barely OK; with N > 3, it is unlikely to be acceptable.  So, the simple iterative solution - N regexes, one for each word, and iterate ensuring each is satisfied - looks like the best choice to me.