Just make sure every word is in r .
if (r.Contains("Word1") && r.Contains("Word2"))
This code checks for the existence of "Word1" AND "Word2" inside the source string, regardless of its relative position within the string.
Edit:
As @Alexei Levenkov (+1) notes, it can be found using the IndexOf method.
if (r.IndexOf("Word1", StringComparison.InvariantCultureIgnoreCase) > -1 && r.IndexOf("Word2", StringComparison.InvariantCultureIgnoreCase) > -1))
source share