The Arduino platform has very limited memory, so it will be 'hard' to implement something like this in in such a manner that you can add dynamically to the list without restrictions.
You could, and should, do something like this:
[PSEUDO CODE]
//define max length for entire string
//define max tokens
//define max token length
//function split
//put chars of string into token as long as next char is != token AND current index < max token length
//if token found OR index out of bounds, progress to next token [remember to add the terminating 0 to the end of token]
//if max tokens has been found return
//if next token was '\0' return