When importing 10s of thousands of emails into a public forum, we thought it really important to obfuscate email addresses so that people who emailed a mailing list didn't get their email address displayed to the world. That's what this plugin does.

First it identifies email addresses using a pretty good regular expression. Then, each email address is obfuscated by replacing @ to " $RAN1 at $RAN2" and '.' to " $RAN1 dot $RAN2 " where $RAN1 and $RAN2 are a fixed number of random alphanumeric characters. The length of the alphanumeric characters can be specified in the plugin.

This does not modify the email addresses in the database, It just obfuscates them when they are published. When unpublished, the email id's would appear in their normal state.

This makes the obfuscation completely random to make it harder to scrape, but it allows a human to read it just fine if they want to take the time. Make sense?

Alright, figured out why it wasn't matching emails in posts. It was only searching for the "@" sign, not the encoded version of it that's stored in posts (@). I've got one more fix and it should be ready for the world.