the fact is, it will not strip ctrl commands... since, the person use !join #roomname with colors all it will return is "Illegal channel name"
a simple solution would be
on $*:text:/^!join\s(\43\S+)$/iS:#: .join $regml(1)
if you want, you can improve regex to not accept special characters on match