Não sei muito bem como usar, muito menos no delphi. Mas acho que você deveria tentar fazer algo com Expressão Regular Abraço
-- José Henrique (Zote) On 11/1/05, Patricia Santana <[EMAIL PROTECTED]> wrote: > > Boa tarde, a todos!!! > > Preciso formatar um texto com o seguinte formato: > Dia/Mes/Ano - hora:00:00 - Texto > > São textos diferentes com posição e tamanho da data diferente. > > Vejam os exemplos : > > 1° ) > 16/06/2005267 - Autos carga ao curador de registros publicos - mp > 15/06/2005070 - Profide-promotoria just def fil idoso port deficVISTA > > 2° ) > 19/10/2005BAIXA EM DEFINITIVO > Vara: 11a Vara Cível de Brasilia > Trânsito em Julgado: 17/10/2005 > 24/08/2005PARA JUNTAR PETIÇÃO > Observação: pg n. 12466 > 13/04/2004PUBLICAÇÃO DE DESPACHO > Magistrado : Des. VALTER XAVIER > Espécie: Agravo de Instrumento > Tipo: Outros > Inteiro Teor do Despacho > Publicado no DJ às fls. 24/26 > > 3° ) > BAIXA REALIZADA 04/05/2001 > AGUARDA CUMPRIR DILIGÊNCIA BAIXAR 03/05/2001 > AUTOS REMETIDOS AO ESCRIVÃO ESCRIVÃO(Ã) 10122697 02/05/2001 > AGUARDA INTIMAR DIÁRIO OFICIAL 27/04/2001 > > > ****************************************************************************************** > Fiz a seguinte função para resolver meu problema : > > procedure TForm1.Button1Click(Sender: TObject); > var > i, j, B, K, PosB : integer; > Linha, DataAux, Dia, Mes, Ano, Andamento : String; > begin > B := 0; > for i := 1 to MemoTexto.Lines.Count -1 do > begin > Linha := MemoTexto.Lines.Strings[i]; > for j := 1 to Length(Linha)-1 do > begin > if Linha[j] in ['0'..'9','/',':'] then > DataAux := copy(Linha, 0, j); > end; > B := 0; > PosB := 0; > for K := 1 to Length(DataAux) do > begin > if DataAux[K] = '/' then > begin > B := B + 1; > if B = 1 then > begin > PosB := K; > Dia := copy(DataAux, 0, K-1); > end; > if B = 2 then > begin > Mes := copy(DataAux, PosB +1,PosB-1); > //ShowMessage('Mes:'+Mes); > Ano := copy(DataAux, PosB + 4,Length(DataAux)); > //ShowMessage('Ano:'+Ano); > end; > end; > end; > if Length(Dia) = 1 then > Dia := '0'+ Dia; > if Length(Mes) = 1 then > Mes := '0'+Mes; > if Length(Ano)> 4 then > Ano := copy(DataAux, PosB + 4,4); > Andamento := copy(Linha, Length(Ano)+12,Length(Linha)); > MemoAndamento.Lines.Add(Dia+ '/' +Mes + '/'+ Ano + ' - ' + '00:00:00'+' - > '+Andamento); > end; > end; > > > Porém esta função só funciona para o 1° exemplo... Para os demais não > funciona.... > Alguém tem uma única função para resolver meu probema? > Vejam o retorno desta função usando o 1° Exemplo : > > 15/06/2005 - 00:00:00 - Profide-promotoria just def fil idoso port > deficVISTA > 15/06/2005 - 00:00:00 - Autos distribuidos ao cartorio > 03/06/2005 - 00:00:00 - Autos com funcionario(a)WILL > 02/06/2005 - 00:00:00 - Autos distribuidos ao cartorio > > Preciso deste formato em todos os textos.... > > Alguém pode ajudar? > > Agradeço a atenção de todos.... > > Patricia Santana > > > > > > --------------------------------- > Promoção Yahoo! Acesso Grátis: a cada hora navegada você > acumula cupons e concorre a mais de 500 prêmios! Participe! > > [As partes desta mensagem que não continham texto foram removidas] > > > > -- > <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> > > > > Links do Yahoo! Grupos > > > [As partes desta mensagem que não continham texto foram removidas] -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> <*> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages <*> Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html