Here's a modification to a script I made in this post. Should do as requested.

Code:
on @*:JOIN:#: {
  .whois $nick
}
raw 319:*: {
  [color:blue]; List of channels unaccepted, seperated by a space[/color]
  var %bad_channels = #bad_chan1 #bad_chan2 #bad_chan3

  var %nick = $2, %c = 1
  if ($1 == $2) return

  while ($gettok($3-,%c,32)) {
    var %chan = $v1
    .echo -q $regex(%chan,/^.*(\x23.*)$/)
    var %chan = $regml(1)
    if ($istok(%bad_channels,%chan,32)) {
      var %c = $comchan(%nick,0)
      while (%c > 0) {
        if ($comchan(%nick,%c).op) /ban -ku300 $comchan(%nick,%c) %nick 2 Kicked for bad channel
        /dec %c
      }
      /break
    }
    /inc %c
  }
}


-KingTomato