Remover acentuação e substituir espaço em branco
Pessoal achei melhor abrir outro tópico já que a parte de isapi rewrite eu já resolvi...
Então, não estou conseguindo remover acentuação de uma string vinda do banco de dados.
PROBLEMA:
Gente, estou gerando meu sitemap dinamicamente mas não estou conseguindo remover acentos e caracteres especiais usando as funções abaixo:
Function RemoveAcentos(ByVal Texto)
Dim ComAcentos
Dim SemAcentos
Dim Resultado
Dim Cont
'Conjunto de Caracteres com acentos
ComAcentos = "ÁÍÓÚÉÄÏÖÜËÀÌÒÙÈÃÕÂÎÔÛÊáíóúéäïöüëàìòùèãõâîôûêÇç'"
'Conjunto de Caracteres sem acentos
SemAcentos = "AIOUEAIOUEAIOUEAOAIOUEaioueaioueaioueaoaioueCc-"
Cont = 0
Resultado = Texto
Do While Cont < Len(ComAcentos)
Cont = Cont + 1
Resultado = Replace(Resultado, Mid(ComAcentos, Cont, 1), Mid(SemAcentos, Cont, 1))
Loop
RemoveAcentos = Resultado
End Function
Function RemoveCaracteresEspeciais(Palavra)
Dim I
Dim LCA(47)
Dim LSA(47)
'aqui vamos por o que queremos retirar
LCA(0) = "º"
LCA(1) = "ª"
LCA(2) = "°"
LCA(3) = "'"
LCA(4) = "¨"
LCA(5) = "¬"
LCA(6) = "&"
LCA(7) = "°"
LCA(8) = "¹"
LCA(9) = "|"
LCA(10) = "²"
LCA(11) = "+"
LCA(12) = "."
LCA(13) = "/"
LCA(14) = "!"
LCA(15) = "@"
LCA(16) = "#"
LCA(17) = "$"
LCA(18) = "%"
LCA(19) = "("
LCA(20) = ")"
LCA(21) = "~"
LCA(22) = "^"
LCA(23) = "{"
LCA(24) = "}"
LCA(25) = "]"
LCA(26) = "["
LCA(27) = "\"
LCA(28) = ";"
LCA(29) = ":"
LCA(30) = ">"
LCA(31) = "<"
LCA(32) = "*"
LCA(33) = "="
LCA(34) = " "
'aqui vamos por o que queremos no lugar de cada no código original está para remover os acentos. aqui eu mudei para retirar numeros e caracteres especiais.
LSA(0) = ""
LSA(1) = ""
LSA(2) = ""
LSA(3) = ""
LSA(4) = ""
LSA(5) = ""
LSA(6) = ""
LSA(7) = ""
LSA(8) = ""
LSA(9) = ""
LSA(10) = ""
LSA(11) = ""
LSA(12) = ""
LSA(13) = ""
LSA(14) = ""
LSA(15) = ""
LSA(16) = ""
LSA(17) = ""
LSA(18) = ""
LSA(19) = ""
LSA(20) = ""
LSA(21) = ""
LSA(22) = ""
LSA(23) = ""
LSA(24) = ""
LSA(25) = ""
LSA(26) = ""
LSA(27) = ""
LSA(28) = ""
LSA(29) = ""
LSA(30) = ""
LSA(31) = ""
LSA(32) = ""
LSA(33) = ""
LSA(34) = "-"
For i= 0 to UBound(LCA)
Resultado = Replace(Palavra,LCA(i),LSA(i))
If Palavra <> Resultado Then
Palavra = ""
Palavra = Resultado
End IF
Next
RemoveCaracteresEspeciais = Resultado
End Function
nova_url = RemoveCaracteresEspeciais(RemoveAcentos(RS("titulo"))) & ".html"
Fiz um teste assim e funcionou:
frase = "São João"
nova_url = RemoveCaracteresEspeciais(RemoveAcentos(frase))
Mas uma string vindo do banco de dados não remove...
A única coisa que estou conseguindo é substituir espaço em branco por - entre as palavras.
OBS:
1- eu já tentei também com outras funções que achei pela net mas não remove os acentos...
2- minha página está definida como: response.Charset="utf-8", tem alguma coisa haver?
Se alguém puder me ajudar eu agradeço...
Discussão (3)
Carregando comentários...