Dos opciones :
- Guardas en una variable global la última posición donde encontró el "separador"
- Pasas la posición donde quieres que comience el análisis como parámetro
Código Delphi
[-]
function CopyEntre(s : string, sep1 : string; sep2 : string; var posicion : integer)
begin
...
for i := posición to length(s) do
begin
end;
...
end;
pos := 1;
texto := 'ABCDE-HOLA+FGHIJ-ADIOS+KLMN';
texto2 := CopyEntre(texto,'-','+',pos);
texto2 := CopyEntre(texto,'-','+',pos);