Doing Fuzzy Phrase search in a large text


First I must say that I spent two days searching before posting,

I need to fuzzy search emails for certain keywords, these keywords are one or two words and can be more,

Since its Fuzzy, I cant use string.contains(),
and since the key words can be more than one word, I cant directly use Levenshtein Algorithm since I need to search for full phrases,

What Im currently doing is building an algorithm with two for loops that looks for the first word in the keyword against the email text using Levenshtein Algorithm, if found, then it would continue looking for the second, third …x word in the keyword.

While this is doable, this would require huge processing power and time,

My question is: is there more efficient way to do the above search ?

I believe what I need is similar to this post, but there is no clear solution in this post,