Gracias delphi.com.ar
mi codigo quedo
Código Delphi
[-]
procedure TDemoCombo.SpinEdit1Change(Sender: TObject);
Var
temp, cadena: String;
posicion, i: Integer;
begin
Valores:= SpinEdit1.Value;
cadena:= Combo.Items.Strings[0];
temp:= '';
i:= 1;
while i <= Valores do
Begin
posicion:= pos('|',cadena);
if posicion <> 0
Then Begin
Temp:= temp + copy(cadena,1,posicion);
delete(cadena,1, posicion);
End
Else temp:= cadena;
i:= i + 1;
End;
valor.Caption:= IntToStr(length(temp));
end;
Ahora solo me queda cambiarlo para que quede como funcion