marcos_804 Postado Janeiro 24, 2005 Denunciar Share Postado Janeiro 24, 2005 Galera, no livro de visitas de um site que estou atualizando, as pessoas colocaram mensagens com letras MAIÚSCULAS, por isso eu usei a propriedade abaixo para torna-las todas minusculas <%mensagem = rs("msg") response.write Lcase(mensagem)%> Porém eu queri que a primeira letra da mensagem ficasse em maiúscula, como eu poderia fazer isso, alguém sabe?DESDE JÁ AGRADEÇO......AGRUARDO RESPOSTA... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Developer Postado Janeiro 24, 2005 Denunciar Share Postado Janeiro 24, 2005 Galera, no livro de visitas de um site que estou atualizando, as pessoas colocaram mensagens com letras MAIÚSCULAS, por isso eu usei a propriedade abaixo para torna-las todas minusculas <%mensagem = rs("msg") response.write Lcase(mensagem)%> Porém eu queri que a primeira letra da mensagem ficasse em maiúscula, como eu poderia fazer isso, alguém sabe?DESDE JÁ AGRADEÇO......AGRUARDO RESPOSTA... E bem complicado fazer isso.. Vou ver se faço uma função e até de noite eu posto aqui... A função vai ser um pouco extensa Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 DackAle Postado Janeiro 24, 2005 Denunciar Share Postado Janeiro 24, 2005 vo te dar uma dica é facilimo fazer use o LCase, Ucase, Mid e Leftpense que você tem que converter tudo pra minusculo... pega o primeiro caractere, deixa maisuluco... e junta o primeo caractere com o resto da msg =)Abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Developer Postado Janeiro 24, 2005 Denunciar Share Postado Janeiro 24, 2005 vo te dar uma dica é facilimo fazer use o LCase, Ucase, Mid e Leftpense que você tem que converter tudo pra minusculo... pega o primeiro caractere, deixa maisuluco... e junta o primeo caractere com o resto da msg =)Abraços Mas como ele vai tirar a primeira letra do que vai ficar com o 2º caracter pra frente? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bareta Postado Janeiro 24, 2005 Denunciar Share Postado Janeiro 24, 2005 (editado) <% mensagem= "o bareta é muito bom..." response.write Ucase(left(mensagem,1))&right(mensagem,len(mensagem)-1) %>testa ai e diz se funfo.... Editado Janeiro 24, 2005 por bareta Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Developer Postado Janeiro 24, 2005 Denunciar Share Postado Janeiro 24, 2005 <% mensagem= "o bareta é muito bom..." response.write Ucase(left(mensagem,1))&right(mensagem,len(mensagem)-1) %> testa ai e diz se funfo.... É isso ae Bareta... Esse foi bem simpeles o que eu ia fazer era bem mais complicado ahhahha.. Mas você já fez... Então como pedido ele disse que se o usuario digitasse letra maiuscula do 2º caracter pra frente ele passava para minuscula e só a primeira letra fica maiuscula...Então eu só dei uma modificação no codigo do bareta... <% mensagem= "testando um codigo ASP" response.write Ucase(left(mensagem,1))&Lcase(right(mensagem,len(mensagem)-1)) %> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bareta Postado Janeiro 24, 2005 Denunciar Share Postado Janeiro 24, 2005 <% mensagem= "o bareta é muito bom..." response.write Ucase(left(mensagem,1))&right(mensagem,len(mensagem)-1) %> testa ai e diz se funfo.... É isso ae Bareta... Esse foi bem simpeles o que eu ia fazer era bem mais complicado ahhahha.. Mas você já fez... Então como pedido ele disse que se o usuario digitasse letra maiuscula do 2º caracter pra frente ele passava para minuscula e só a primeira letra fica maiuscula...Então eu só dei uma modificação no codigo do bareta... <% mensagem= "testando um codigo ASP" response.write Ucase(left(mensagem,1))&Lcase(right(mensagem,len(mensagem)-1)) %> eu não tinha visto essa parte das minusculas ...... heheheehe.... vlw Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 DackAle Postado Janeiro 24, 2005 Denunciar Share Postado Janeiro 24, 2005 Bem por ai mas eu iria fazer desse jeito mensagem1 = ucase(left(rs("msg"),1)) mensagem2 = lcase(mid(rs("msg"),2)) response.write mensagem1 & mensagem2 com ucase, lcase, mid e left como eu disse... rsO bom de programação é que você pode chegar ao mesmo lugar de varias formas ahahahahaAgora é só o amigo ver qual ele acho melhor e utilizar =)Abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 marcos_804 Postado Janeiro 25, 2005 Autor Denunciar Share Postado Janeiro 25, 2005 Galera, VALEUUUUUUUUU! As dicas de voces foram todas validas.BARETA, usei sua dica, mas fiz uma pequena mudança, pois quando a pessoa postava a mensagem em maiúsculo a mesagem vinha desta forma.Mas de qualquer forma todos do forum que me tiraram um PEDRA do sapato.MODERADORES, podem fechar o POST! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rob_g2*6(sic)6 Postado Janeiro 25, 2005 Denunciar Share Postado Janeiro 25, 2005 Fiz esses dias .... server p/ textos longos ..... também !!! Hehe fiquei umas meia hr pensando Acho que é uma função muito Boa...dim ctg, str, vrfctg = 0function correctRazao(param) 'Função que Arruma Razão Socialif Len(trim(param)) > 2 then str = lCase(trim(param)) vrf = split(str," ") do Until ctg = Ubound(vrf) if len(vrf(ctg)) > 3 then correctRazao = correctRazao & uCase(left(vrf(ctg),1)) & mid(vrf(ctg),2,len(vrf(ctg))) & " " else correctRazao = correctRazao & vrf(ctg) & " " end ifctg = ctg +1 loopelse correctRazao = trim(param)end ifend functionPS:param é o seu texto ou uma variável !!!! e para retornar o texto corrigido faça assim:variável = correctRazao("TEXTO A SER CORRIGIDO] OU [VARIÁVEL]") Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Developer Postado Janeiro 25, 2005 Denunciar Share Postado Janeiro 25, 2005 Rob_g2*6(sic)6, essa sua função está cortando, só aparece uma palavra... E corta o resto Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rob_g2*6(sic)6 Postado Janeiro 25, 2005 Denunciar Share Postado Janeiro 25, 2005 c tá loco !!!!!!!!!!!!!To usando na intranet da empresa !!!!!! vo testa de novo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 cyberalexxx Postado Janeiro 25, 2005 Denunciar Share Postado Janeiro 25, 2005 c tá loco !!!!!!!!!!!!!To usando na intranet da empresa !!!!!! vo testa de novo Realmente sua função esta com problema, ela não esta pegando o ultimo elemento do vetor, tomei a liberdade de corrigi-la:<%dim ctg, str, vrfctg = 0function correctRazao(param) 'Função que Arruma Razão Socialif Len(trim(param)) > 2 thenstr = lCase(trim(param))vrf = split(str," ")do Until ctg = Ubound(vrf)+1 if len(vrf(ctg)) > 3 then correctRazao = correctRazao & uCase(left(vrf(ctg),1)) & mid(vrf(ctg),2,len(vrf(ctg))) & " " else correctRazao = correctRazao & vrf(ctg) & " " end ifctg = ctg +1loopelsecorrectRazao = trim(param)end ifend function%> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Developer Postado Janeiro 25, 2005 Denunciar Share Postado Janeiro 25, 2005 c tá loco !!!!!!!!!!!!!To usando na intranet da empresa !!!!!! vo testa de novo Realmente sua função esta com problema, ela não esta pegando o ultimo elemento do vetor, tomei a liberdade de corrigi-la:<%dim ctg, str, vrfctg = 0function correctRazao(param) 'Função que Arruma Razão Socialif Len(trim(param)) > 2 thenstr = lCase(trim(param))vrf = split(str," ")do Until ctg = Ubound(vrf)+1 if len(vrf(ctg)) > 3 then correctRazao = correctRazao & uCase(left(vrf(ctg),1)) & mid(vrf(ctg),2,len(vrf(ctg))) & " " else correctRazao = correctRazao & vrf(ctg) & " " end ifctg = ctg +1loopelsecorrectRazao = trim(param)end ifend function%> Isso mesmo cyberalexxx! Era a mesma coisa que eu ia fazer no codigo... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rob_g2*6(sic)6 Postado Janeiro 25, 2005 Denunciar Share Postado Janeiro 25, 2005 já que é p/ arrumar então eu arrumo !!! E bato o pé !!!!!!!! ta funcionando !!!! só oque esta em vermelho ali .... que se a função fosse usada dentro... de um loop não funcionaria !!!function correctRazao(param) 'Função que Arruma Razão Socialif Len(trim(param)) > 2 then str = lCase(trim(param)) vrf = split(str," ") ctg = 0 do Until ctg = Ubound(vrf) if len(vrf(ctg)) > 3 then correctRazao = correctRazao & uCase(left(vrf(ctg),1)) & mid(vrf(ctg),2,len(vrf(ctg))) & " " else correctRazao = correctRazao & vrf(ctg) & " " end ifctg = ctg +1 loopelse correctRazao = trim(param)end ifend function Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Developer Postado Janeiro 25, 2005 Denunciar Share Postado Janeiro 25, 2005 todos os teste que fiz ela retornou certo Você colocou uma string com espaços? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 RAFBRASIL Postado Fevereiro 6, 2005 Denunciar Share Postado Fevereiro 6, 2005 Rob_g2*6(sic)6, Legal essa funçãoo, mas ela não prevê a hipótese do usuário digitar 2 ou mais espaçoes em branco entre as palavras do nome, dai sugiro que uses o trim também nnos elementos resultantes do split. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 RAFBRASIL Postado Fevereiro 6, 2005 Denunciar Share Postado Fevereiro 6, 2005 Coloquei na primeira linha do loop: vrf(ctg) = Trim(vrf(ctg))E dai funcionou! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 RAFBRASIL Postado Fevereiro 6, 2005 Denunciar Share Postado Fevereiro 6, 2005 Optimizei a função e testei-a. Como está abaixo funciona perfeitamente:function CorrigeNome(param)if Len(trim(param)) > 2 then str = lCase(trim(param)) vrf = split(str," ") ctg=Ubound(vrf) For K = 0 to Ctg csf=len(vrf(k)) vrf(k) = Trim(vrf(k)) if csf > 3 then CorrigeNome = CorrigeNome & uCase(left(vrf(k),1)) & mid(vrf(k),2,csf) & " " else CorrigeNome = CorrigeNome & vrf(k) & " " end if Nextelse CorrigeNome = trim(param)end ifend function Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 RAFBRASIL Postado Fevereiro 6, 2005 Denunciar Share Postado Fevereiro 6, 2005 Corrijo-me! A função acima ainda dava problema coom nomes de 3 letras e preposições de 1 ou 2 letras. A que segue parece ter corrigido todos os problemas:function CorrigeNome(param)str = lCase(trim(param))vrf = split(str," ")ctg=Ubound(vrf) For K = 0 to Ctg csf=len(vrf(k)) if csf > 2 then vrf(k) = Trim(vrf(k)) CorrigeNome = CorrigeNome & uCase(left(vrf(k),1)) & mid(vrf(k),2,csf) & " " else CorrigeNome = CorrigeNome & vrf(k)& " " end if NextCorrigeNome = Trim(CorrigeNome)end function Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 fertel Postado Fevereiro 6, 2005 Denunciar Share Postado Fevereiro 6, 2005 Galerinha, abaixo um código perfeito que converte a primeira letra em maiúsculas e ainda descarta "de" "do", etc.Ex.: RIO DE JANEIRO >>> Rio de JaneiroPublic Function ConverteMaiuscula(Texto) Dim sPalavra, iPosIni Dim iPosFim, sResultado iPosIni = 1 Texto = LCase(Texto) & " " Do Until InStr(iPosIni, Texto, " ") = 0 iPosFim = InStr(iPosIni, Texto, " ") sPalavra = Mid(Texto, iPosIni, iPosFim - iPosIni) iPosIni = iPosFim + 1 If sPalavra <> "de" And sPalavra <> "da" And sPalavra <> "do" And _ sPalavra <> "das" And sPalavra <> "dos" And sPalavra <> "a" And sPalavra <> "e" Then sPalavra = UCase(Left(sPalavra, 1)) & LCase(Mid(sPalavra, 2)) End If sResultado = sResultado & " " & sPalavra Loop ConverteMaiuscula = Trim(sResultado) End Function Depois é só colocar assim onde aparecerá: <% Response.Write(ConverteMaiuscula("SÃO JOSÉ DOS CAMPOS"))%> Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
marcos_804
Galera, no livro de visitas de um site que estou atualizando, as pessoas colocaram mensagens com letras MAIÚSCULAS, por isso eu usei a propriedade abaixo para torna-las todas minusculas
Porém eu queri que a primeira letra da mensagem ficasse em maiúscula, como eu poderia fazer isso, alguém sabe?
DESDE JÁ AGRADEÇO...
...AGRUARDO RESPOSTA...
Link para o comentário
Compartilhar em outros sites
20 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.