I don't do a lot with raws, but I think this is what you're after:

Code:
raw 319:*: {
  var %nick = $2, %c = 1
  while ($gettok($3-,%c,32)) {
    var %chan = $v1
    .echo -q $regex(%chan,/^.*(\x23.*)$/)
    var %clist = $addtok(%clist,$regml(1),44)
    /inc %c
  }
  var %c = $comchan(%nick,0)
  while (%c > 0) {
    if ($istok(%clist,$comchan(%nick,%c),44)) var %common = $addtok(%common,$comchan(%nick,%c),44)
    /dec %c
  }
  if ($window(%nick)) /echo %nick %nick Common Channels: %common
  else /echo -a %nick Common Channels: %common
}


Tested it, and works on 6.16