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

 


Responder a