You might look at the rules in SpamAssassin, and the custom rules at, say http://www.rulesemporium.com/
. Lots of complex patterns, particuarly the (?:posi|nega)tive look-(?:ahea|behin)d.
As a simple example, consider something like /\bviagra\b/i. Now assume you want to match also "\/i@gr@" (very simple obfuscation). If you do /\b(?:\\\/|v)i[@a]gr[@a]\b/i, it doesn't actually work for what you want it to. That's because \b insists on a word boundery, and since \ and @ aren't word characters, they'll only match if adjacent to non-word characters. So what you really want is /(?<!\w)(?:\\\/|v)i[@a]gr[@a](?!\w)/i.