it is based on a "limitation" in ArmA, so dont try to find any logic sense in these functions, they are just gaming the game. That limination is the number of charaters per line that might be processed by ArmA, so what you do is to fill with spaces all the available characters except these for a local var=and the characters that you want to survive in your string. The result is {"many spaces here" _var="YOUR STRING HERE"}, anything that passes the character limit of an ArmA script line, will be "cut" from your original string. So, playing with the number of spaces you add at the beginning of a line, you may truncate part of a string and assign the result to a variable.