If I replace the semicolons in %Tags with $chr(32), which is space, then I can just use "//StripUserID %Tags" several times to get the number I need.

Code:
alias StripUserID {
    if (user-id isin $1) {
      echo -a Found User ID: $remove($1,user-id=)
    }
    else {
      set %TagsTemp $remove(%TagsTemp,$1)
    }
}


So, although this solved my primary problem, I am still very curious as to how regex works. If anyone has any information on it, I'd appreciate hearing about it.