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 >>>>>

<*> 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

 


Responder a