That will trigger for ######deans_channel
I'll just tokenize 32 $strip($1-) in my example, but that won't prevent multiple $chantypes from being read.
If regex is the preferred choice, I'll do this instead:
on $*:text:/^!(join\s\043(?!\043)\S+)$/iS:#: $regml(1)
this will make sure it starts with one $chantypes to be the legit channel name. Since !join is the cmd, you could have just returned it with $regml(1) all together without specifying the default /join command again. Of course, I have nothing further to say if you call yourself an extra miler.
P.S. I know some channels can be made with #########blah and all that, but that's most likely rare, as people will choose #blah as being the channel.