* = wildcard
? = one wildcard (just one character, doesn't matter which one)
Example:
*!*@H?y.com
It will match everything like:
h3y.com, hey.com, hay.com, hby.com, everything that have one character between 'h' and 'y'. And there MUST be a character between, if it's just hy.com, it wouldn't match. ? indicate one character, where * can be unlimited characters.
*!*@*.com would ban everything with .com in end,
*!*@?.com would ban:
*!*@A.com
*!*@B.com
*!*@C.com, and so on.
With a mask of: King!
tehking@have.this.cool.vhost.com
(nick!user@host), I would prefer something like *!
theking@have.this.cool.vhost.com, *!theking@*.vhost.com, *!*@have.this.cool.vhost.com or *!*@*.vhost.com, as the ban mask.
By default (almost) all of my scripts ban with the *!*@host mask.
I hope this gave you the answer for your question.