String.Split funciona de forma estranha quando o último valor está vazio
Gostaria de dividir minha string em array, mas funciona mal quando o último "valor" está vazio. Veja meu exemplo, por favor. É bug ou recurso? Existe alguma maneira de usar essa função sem soluções alternativas?
var
arr: TArray<string>;
arr:='a;b;c'.Split([';']); //length of array = 3, it's OK
arr:='a;b;c;'.Split([';']); //length of array = 3, but I expect 4
arr:='a;b;;c'.Split([';']); //length of array = 4 since empty value is inside
arr:=('a;b;c;'+' ').Split([';']); //length of array = 4 (primitive workaround with space)