none
como salvar primeira letra da palavra maiuscula e o resto minuscula?? RRS feed

  • Pergunta

  • Olá pessoal, qualquem pode me dizer como eu salvo a primeira letra de uma palavra em maiusculo e o resto minusculo???
    o banco é firebird...

    ex:

    digito ANDRIANO SANTOZA ou adriano santoza e quero salvar Adriano Santoza
    quinta-feira, 14 de fevereiro de 2008 13:16

Respostas

  • Olá Adriano,

     

    Você precisa fazer isso no banco? Veja, vou postar uma idéia para você, a função aqui eu fiz no C#, mas acredito que não será dificil você realizá-la em outra linguagem qualquer.

     

    Olha só, abri o visual studio, coloquei um label e um botão na tela, alterei a propriedade text do label para 'Carlos Monteiro' e fiz esse exemplo dentro do evento click do botão:

     

    Code Snippet

    private void button1_Click(object sender, EventArgs e)

    {

    //declarei uma array de strings como conteudo do label, no caso Carlos Monteiro

    string[] palavras = label1.Text.Split(' ') ;

    string primeiraLetra = "";

    string restante = "";

     

    //Percorri a string com cada palavra

    for (int i = 0; i < palavras.Length; i++)

    {

     

    primeiraLetra = palavras[i].Substring(0, 1).ToString().ToUpper();

    restante = palavras[i].Substring(1, palavras[i].Length -1).ToString().ToLower();

     

    //atribuo a posição da string a palavra com a primeira maiuscula e o restante minusculo

    palavras[i] = primeiraLetra + restante;

    }

     

    //atribuo a junção do array no label novamente

    label1.Text = String.Join(" ", palavras);

    }

     

     

    Espero ter ajudado.

     

    []s

     

    PS: Se o poste servir, marque-o como resposta! ;-)

    quinta-feira, 14 de fevereiro de 2008 15:50
  • Oi Carlos, valeu pela sua ajuda, foi muito util, tbm uso C#, caiu como uma luva..até
    quinta-feira, 14 de fevereiro de 2008 16:22

Todas as Respostas

  • Olá Adriano,

     

    Você precisa fazer isso no banco? Veja, vou postar uma idéia para você, a função aqui eu fiz no C#, mas acredito que não será dificil você realizá-la em outra linguagem qualquer.

     

    Olha só, abri o visual studio, coloquei um label e um botão na tela, alterei a propriedade text do label para 'Carlos Monteiro' e fiz esse exemplo dentro do evento click do botão:

     

    Code Snippet

    private void button1_Click(object sender, EventArgs e)

    {

    //declarei uma array de strings como conteudo do label, no caso Carlos Monteiro

    string[] palavras = label1.Text.Split(' ') ;

    string primeiraLetra = "";

    string restante = "";

     

    //Percorri a string com cada palavra

    for (int i = 0; i < palavras.Length; i++)

    {

     

    primeiraLetra = palavras[i].Substring(0, 1).ToString().ToUpper();

    restante = palavras[i].Substring(1, palavras[i].Length -1).ToString().ToLower();

     

    //atribuo a posição da string a palavra com a primeira maiuscula e o restante minusculo

    palavras[i] = primeiraLetra + restante;

    }

     

    //atribuo a junção do array no label novamente

    label1.Text = String.Join(" ", palavras);

    }

     

     

    Espero ter ajudado.

     

    []s

     

    PS: Se o poste servir, marque-o como resposta! ;-)

    quinta-feira, 14 de fevereiro de 2008 15:50
  • Oi Carlos, valeu pela sua ajuda, foi muito util, tbm uso C#, caiu como uma luva..até
    quinta-feira, 14 de fevereiro de 2008 16:22
  • Tente este codigo, acredito ser mais eficiente, por não precisar do FOR.

     System.Globalization.CultureInfo cul = new System.Globalization.CultureInfo("pt-BR");

                Debug.WriteLine(cul.TextInfo.ToTitleCase("TESTE DE ESCRITA").ToLower());
                Debug.WriteLine(cul.TextInfo.ToTitleCase("teste de escrita"));


    crmmvio

    • Sugerido como Resposta EduardoPiresMVP sexta-feira, 11 de maio de 2012 20:55
    sexta-feira, 11 de maio de 2012 20:44
  • Tente este codigo, acredito ser mais eficiente, por não precisar do FOR.

     System.Globalization.CultureInfo cul = new System.Globalization.CultureInfo("pt-BR");

                Debug.WriteLine(cul.TextInfo.ToTitleCase("TESTE DE ESCRITA").ToLower());
                Debug.WriteLine(cul.TextInfo.ToTitleCase("teste de escrita"));


    crmmvio

    Além de tudo é um código limpo, elegante e de fácil manutenção!

    É possível sim! Ponha isso na sua cabeça. É possível. "Steve Jobs"

    sexta-feira, 11 de maio de 2012 20:56