I don't know much about regex, but I did note that your code will always return $false, even if it also returns $true

The correct format (to keep both from happening) would be
Code:
alias checksteam {
  if ($regex($1-,/^STEAM_[01]:[01]:\d{2,10}$/) > 0) {
    return $true
  }
  else {
    return $false
  }
} 


I don't know if that solves the problem (ie: there were times when you were getting both $true and $false returned) or if there is a problem with the regex, which always caused just the $false to be returned.