HomeArtigosCategoriaASP › Transformar em maiúsculo primeira letra de cada sentença

Transformar em maiúsculo primeira letra de cada sentença

Postado em 23/10/2008 às 5:42:13 PM por Adriano Rosa na categoria asp

Ninguém sabe ao exato uma forma em que os usuários do seu site se comportam, ainda mais com relação a preenchimento de formulários de cadastro entre outros, Muitas vezes o usuário que se cadastra no seu site ta pouco ligando quando a maneira em que escreve se MAIUSCULO ou minúsculo com ou sem CAPS-LOCK, pensando em uma solução quanto a isso criei uma função para formatar certos tipos de textos, é muito útil no preenchimento de campos nome de um formulário onde é retornada a primeira letra de uma string em maiúsculo. Venho usando está função há um tempo, e hoje resolvi publicá-la aqui em meu blog para que venha ser útil para outras pessoas que acham necessário.

Um exemplo é se temos em uma string : joão mendes da silva ou JOAO MENDES DA SILVA é retornado João Mendes da Silva

Dessa forma podemos armazenar em nosso cadastro nomes do cliente sempre num padrão, evitando que em alguns caso tenhamos um cadastro como nome ou titulo em maiúsculo e outro minúsculo.

Segue abaixo a função que eu dei o nome de UPPER, não sei por que, mas... Segue seus exemplos:
<%
Function UPPER(texto)
 Dim str, i, termo, cont
 
 quebra = Replace(texto,".","")
 str = Split(quebra," ")
 
 For i = LBound(str) to UBound(str)
  cont = Len(str(i))
  If ( cont = 1 ) Then
   If ( isNumeric(str(i)) ) Then
    termo = termo & str(i) & " "
   Else
    termo = termo & UCase(str(i)) & ". "
   End If   
  ElseIf ( cont = 2 ) Then ' Se caso usar abreviação EX adriano r souza Retorna R.
   termo = termo & LCase(str(i)) & " "
  ElseIf ( cont > 2 ) Then
   termo = termo & UCase(Mid(str(i),1,1)) & LCase(Mid(str(i),2))& " "
  End If
 Next
 UPPER = Trim(termo)
End Function
 Dim Ex1,Ex2,Ex3
 Ex1 = "joão mendes da silva"
 Ex2 = "JOÃO MENDES DA SILVA"
 Ex3 = "joão m. silva"
 
 With Response  
  .Write UPPER(Ex1) & "<br />"
  .Write UPPER(Ex2) & "<br />"
  .Write UPPER(Ex3) & "<br />"
 End With
%>
retorno da função:
1 = João Mendes da Silva
2 = João Mendes da Silva
3 = João M. Silva
Espero que seja útil
[]'s

Publicidade
(3) Comentários
  • Comentou Fabio
    disse em 07/01/2009 09:12:21

    <span style="text-transform: capitalize">Seu texto aqui.</span> Muiiiito menos complicado e menos processo para o servidor.

  • Comentou Adriano Rosa
    disse em 17/01/2009 23:31:10

    Oi Fábio, concordo contigo, no entanto, pense que no seu banco de dados os dados foram armazenados dados sem formatação, por ex. alguns títulos estão Em Maiúsculo e outros em minúsculos, Mas gravando as informações já corretamente formatadas não será necessário utilizar css para transformar estes caracteres em maiusculo.

  • Comentou Marcos
    disse em 19/06/2009 13:22:13

    Ola, Muito bom o código e funciona. Meu questionamento é sobre como usar a função upper numa frase tipo "EU TESTEI O UPPER" e ficou assim "Eu Testei O Upper" mas eu queria assim> Eu testei o upper".... como modificar para funciona da forma que necessito ?

Seu comentário foi salvo com sucesso.

aguarde   Aguarde estamos gravando seu comentário ...
Escreva um comentário Somente texto, Não é permitido uso de tags html
Ultimos Comentários

Desenvolvido em XHTML, CSS, ASP, WEBSTANDARDS
Armazenamento de Dados: SQLServer

AdrianoRosa.Com © 2008 Todos os Direitos Reservados
Autor: Adriano Rosa.

Creative Commons License

Valid XHTML 1.0 Strict