I figured out the problem...if the variable being split starts with a space then tasker sets the first split variable to space i.e. the first word ends up in the second split variable e.g.
%var is set to ' This is a string'
(ignore the quotes, note the space before This)
then after Variable Split %var
%var1 = %var1 %var2 = This %var3 = is %var4 = a %var5 = string
Maybe a bug or working as designed? Anyway now I know what's going on my task is working fine...