Olá Amigo, segue o código que você pediu: Você só tem que atribuir à variável Texto o caminho que você quer que desmembre... Nesse caso ele vai jogando os nomes "desmembrados" para um Memo, mas você pode alterar do jeito que quiser. Mas da pra usar o copy sim...
var I, Idx: Integer; Texto: string; begin Texto := '\pasta1\arquivos\dados'; Idx := 1; for I := 2 to Length(Texto) do begin if Texto[I] = '\' then begin Memo1.Lines.Add(Copy(Texto, Idx + 1, I - Idx - 1)); Idx := I; end; if I = Length(Texto) then Memo1.Lines.Add(Copy(Texto, Idx + 1, I)); end; end; P.S.: Não coloquei comentário em linha nenhuma pq não deu tempo, então se surgir dúvida, poste na lista!!! Bom Código Ricardo Berti ----- Original Message ----- From: Lucas To: delphi-br@yahoogrupos.com.br Sent: Wednesday, January 24, 2007 4:35 PM Subject: [delphi-br] Desmembrar string Preciso desmembrar o caminho de pastas de arquivos, exemplo: tenho uma string com "\pasta1\arquivos\dados" preciso separar isto em 3 strings: pasta1 arquivos dados lembrando que não da pra usar o copy porque os nomes das pastas podem ser de varios tamanhos. Alguém tem uma dica? Desde ja agradeço. Lucas. [As partes desta mensagem que não continham texto foram removidas]