This is an example of how $hfind can find matches between 1 person's address and all the wildcard banmasks in the hashtable.

//hfree -w foo | hadd -ms foo *@*.irccloud.com data | hadd -ms foo *!*foobar@* data | var %address nick!sid12345@servername.irccloud.com | echo -a $hfind(foo,%address,1,W)

With this syntax, when it finds a match, it returns the 1st item-name in the hashtable that's a wildcard match against the not-wildcard string in %address. Hashtables only exist in ram, so if you need to save things for next time you run mirc, you need to save changes to disk, and then reload next time.

write to disk in ini format after making updates to the list:

hsave -si foo filename

The -i switch causes this to be in .ini format, regardless what kind of filename you use.

The next time you start mirc, you'd load the ban list from disk:

hload -sim foo filename