Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Entre para seguir isso  
Bravo

Dbedit

Recommended Posts

Bravo    0

Com o descrito abaixo, consigo comverter a primera letra de cada frase para maiúscula.

begin

with Sender as TDBEdit do

if (SelStart = 0) or (Text[selStart] = ' ') then

if Key in ['a'..'z'] then

Key := UpCase(Key);

end;

Pergunto:é possível deixar como minuscula as preposições 'de', 'dos', 'da' e 'das'? Como devo proceder?

Antecipo meus agradecimentos aos colegas.

Um abraço,

Euber

Compartilhar este post


Link para o post
Compartilhar em outros sites
e_gama    0

uma solução alternativa seria:

function Minuscula(Texto1, Texto2: string): string;

var S, X: string;

  I    : Integer;

begin

 S := Texto1;

 X := '';

 I := Pos(UpperCase(Texto2), UpperCase(S));

 if I > 0 then

    begin

      Delete(S, I, Length(Texto2));

      Insert(LowerCase(Texto2), S, I);

   end;

 Result := S;

end;

exemplo: Label1.Caption := Minuscula('JOAO DA SILVA', ' DA ');

nesse caso, convertera apenas a substring ' DA ', e so repetir para os demais casos: ' de ', ' do ', etc...

Compartilhar este post


Link para o post
Compartilhar em outros sites
Krad Nale    0

Olá ...

A função anterior é boa, mas o programa precisa reconhecer o que é uma preposição, e como essas preposições são muito comuns, pode-se fazer um ARRAY ou conjunto de preposições. Por exemplo :

CONST Preposicoes : ARRAY [0..2] of String = ('de', 'da', 'do');

E efetuar um loop : se o texto for uma das preposições do ARRAY (conjunto) de preposições, converta pra minúsculas, por exemplo.

Ah, e para se referenciar a um valor específico no ARRAY :

Caption := Preposicoes[0];

O valor Caption vai ser 'de', que, se você reparar, é o 1o. valor do conjunto. E assim vai ...

 'Té mais ...

Compartilhar este post


Link para o post
Compartilhar em outros sites
e_gama    0

Na verdade a ideia da funcao não era converter preposicoes, e sim, um trecho qualquer de um string.

mas valeu pela dica...

thx...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Entre para seguir isso  





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×