Foros del Web » Programando para Internet » ASP Clásico »

Quitar acentos

Estas en el tema de Quitar acentos en el foro de ASP Clásico en Foros del Web. El problema que tengo quizás sea sencillo pero no hay forma de que me salga. Lo he probado de muchas formas y no lo consigo. ...
  #1 (permalink)  
Antiguo 28/06/2007, 01:52
 
Fecha de Ingreso: abril-2007
Mensajes: 32
Antigüedad: 17 años, 1 mes
Puntos: 0
Quitar acentos

El problema que tengo quizás sea sencillo pero no hay forma de que me salga. Lo he probado de muchas formas y no lo consigo.

Tengo un formulario cuyos datos se insertan en una base de datos y quiero que un campo se inserte sin tildes y en mayusculas.

Este es el campo:
<p>
<label for="APELLIDOS">Apellidos <span title="Campo obligatorio" class="obligatorio">*</span>:
<input id="APELLIDOS" type="text" name="APELLIDOS" value="<%=Server.HTMLEncode(APELLIDOS)%>" tabindex="1" size="20" maxlength="50" alt="Apellidos" title="Apellidos" />
</label>
</p>


form.APELLIDOS.value='<%=Request.Form("APELLIDOS") %>';


He probado con <%UCase()%> para las mayúsculas pero nada y con esta función para las tildes:

<%
Function EliminarAcentos(APELLIDOS)
dim i, s1, s2
s1 = "ÁÀÉÈÍÏÓÒÚÜáàèéíïóòúü"
s2 = "AAEEIIOOUUaaeeiioouu"
if len(APELLIDOS) <> 0 then
For i = 1 to Len(s1)
texto = replace(APELLIDOS,mid(s1,i,1),mid(s2,i,1))
next
end if
EliminarAcentos = APELLIDOS
End Function
%>

Quizás las ponía en el sitio equivocado, no se. Alguien podría ayudarme?
  #2 (permalink)  
Antiguo 28/06/2007, 02:00
 
Fecha de Ingreso: julio-2005
Mensajes: 10
Antigüedad: 18 años, 10 meses
Puntos: 0
Re: Quitar acentos

Lo de las mayúsculas yo lo haría:
<%
APELLIDOS=Ucase(APELLIDOS)
%>
  #3 (permalink)  
Antiguo 28/06/2007, 02:58
 
Fecha de Ingreso: enero-2006
Ubicación: Torroles (Costa der Só)
Mensajes: 1.017
Antigüedad: 18 años, 5 meses
Puntos: 7
Re: Quitar acentos

Y para la eliminacion de acentos yo usaria expresiones regulares:

Código:
Function reemplaza(texto, patrn, replStr)    
        Dim regEx
        Set regEx = New RegExp            ' Crea una expresión regular.    
        regEx.Pattern = patrn            ' Establece el modelo.    
        regEx.IgnoreCase = True            ' Hace distinción entre mayúsculas y minúsculas.   
        reemplaza = regEx.Replace(texto, replStr)   ' Realiza el reemplazo. 
        set regEx = nothing
End Function

Su uso:

Código:
function EliminarAcentos(APELLIDOS)
dim texto
texto = APELLIDOS
if len(texto) <> 0 then
      texto = reemplaza(texto,"[ÀÁÄáàä]","A")
      texto = reemplaza(texto,"[ÈÉËèéë]","E")
      texto = reemplaza(texto,"[ÌÍÏìíï]","I")
      texto = reemplaza(texto,"[ÒÓÖòóö]","O")
      texto = reemplaza(texto,"[ÙÚÜùúü]","U")
end if
  EliminarAcentos = texto
  End Function


Un saludo
__________________
"Tus pecados son el estiércol sobre el que florecerán las flores de tus virtudes" - Gerald Messadié -
  #4 (permalink)  
Antiguo 28/06/2007, 03:45
 
Fecha de Ingreso: abril-2007
Mensajes: 32
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Quitar acentos

muchas gracias!!! voy a probarlo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:58.