essa q fiz tira espacos do comeco da string do fim e tambem deixa em minusculo tudo q vc colocar nas exececoes exeto palavras maiores q 3 letras
function Formatacao(Texto :String) :String; const EXCECOES = 'DA DAS DE DI DO DOS DU'; var Tam, Pos1, Pos2 :Integer; Str :String; begin If Texto[1] = ' ' Then While Texto[1] = ' ' do Delete(Texto,1,1); If Texto[Length(Texto)] = ' ' Then While Texto[Length(Texto)] = ' ' do Delete(Texto,Length(Texto),1); Tam := Length(Texto); Texto := AnsiUpperCase(Texto)+#32; While True do Begin Pos1 := Pos(#32,Texto); If Pos1 = 0 Then Break; Str := Copy(Texto,1,Pos1); Pos2 := Pos(Str,EXCECOES); If Pos2 > 0 Then Str := AnsiLowerCase(Str) Else If Not (Length(Str) = 3) And (Str <> 'LTDA ') Then Str := Copy(Str,1,1)+AnsiLowerCase(Copy(Str,2,Tam)); Result := Result+Str; System.Delete(Texto,1,Pos1); End; Delete(Result,Length(Result),1); End; Leandro... [> Mutuka <] --------------------------------- Yahoo! Mail: agora com 1GB de espaço grátis. Abra sua conta! [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] ou [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