First query: The tokenize command will separate the information based upon the character supplied. The 32 (in your example) is the ascii value of the character used to separate the different tokens (in this case, the space character)
/help /tokenize makes it about as clear as possible, and includes an example.
Regarding your second query, the two lines return completely different characters, and use different characters to determine the tokens.
Each line could be re-written in simpler (yet longer) forms.
For the first one it could be like
set %a $pos($2,'t=)
set %b $mid($2,%a,$len($2))
set %c $gettok(%b,1,38)
set %d $right(%c,-3)
set %a %d
In this one, first the term 't= is located in $2, then the position of that term is stored in %a
Next, %b is set to hold anything after that term, including the term, to the end of the entry
Then, %c is set to the characters going from the start to (but not including) the first occurance of the character represented by the ascii value of 38 (the & sign)
Next the %d is set to all of the characters from the start to the end of %c with the exception of the first 3
Finally %a is set to the same value as %d
The second one could be like
set %a $pos($2,'t=)
set %b $mid($2,%a,$len($2))
set %c $gettok(%b,2,38)
set %d $gettok(%c,1,39)
set %e $right(%d,-2)
set %a %e
In this one, while it start off the same for the first two variables, the 3rd (%c) is set to the characters between the first and second & signs, then it looks for the first occurance in that section for the apostraphe ('), then returns all but the left 2 characters.
Since the second code looks for two different token indentifiers, there has to be a gettok for each.
I hope this explains your question, and, if that was where your friend was having problems, it helps resolve the problems.
I find when writing code, it's easier to put the code simply (like I did above) then when I have it working, combine the different steps into a single line.