It's possible to parse by character (numeric) position instead of by searching for a string. Character positions start at 1 for the first character, and range upwards for further characters (ie, the second character in the source is 2, etc). You can indicate at which character to start parsing a token by placing this character position before the token variable name. Then, you place how many characters you wish to parse into that token after the token variable name, with a + sign immediately before the count.
/* Parse My_Variable by character position */
My_Variable = "This is some data"
PARSE VAR My_Variable   4 token.1 +6    token.2 +5    3 token.3
DO i=1 TO 3
   SAY "token."i "= '"token.i"'"
END

token.1 will be the 6 characters of My_Variable's value starting at character 4 (ie, "s is s"). token.2 will be the next 5 characters (ie, "ome d"). Note that there is no character position specified for the second token, so that is why it starts where the previous token ended. token.3 will be all data starting at character 3 (ie, "is is some data").