Foros del Web » Programación para mayores de 30 ;) » .NET »

.NET Basic - Funcón quitar Acentos

Estas en el tema de .NET Basic - Funcón quitar Acentos en el foro de .NET en Foros del Web. Hola amigos!!! Existe alguna función que quite los acentos? o me tengo que currar yo algo? Imagino que ya hay algo hecho, me podríais indicar???? ...
  #1 (permalink)  
Antiguo 10/12/2008, 09:05
 
Fecha de Ingreso: marzo-2007
Mensajes: 538
Antigüedad: 17 años, 1 mes
Puntos: 0
.NET Basic - Funcón quitar Acentos

Hola amigos!!!
Existe alguna función que quite los acentos? o me tengo que currar yo algo? Imagino que ya hay algo hecho, me podríais indicar????

Para .NET con Visual Basic.


Gracias!!!
  #2 (permalink)  
Antiguo 10/12/2008, 09:32
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 16 años, 7 meses
Puntos: 87
Respuesta: .NET Basic - Funcón quitar Acentos

podrias usar una expresion regular para solo validar las letras sin acentos algo asi

asi todo lo que no sea letra se eliminara, pero ojo q tendrias q especificar las letras por algo como si es á reemplazar por a.

algo como esto
Regex.Replace(cadenaEntrada, "[^a-zA-Z ]","")

eliminara todo lo que no sea letras. pero tu tienes que reemplazar no eliminar.

asi que solo investiga la expresion regular correspondiente.
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
  #3 (permalink)  
Antiguo 10/12/2008, 09:38
 
Fecha de Ingreso: marzo-2007
Mensajes: 538
Antigüedad: 17 años, 1 mes
Puntos: 0
Respuesta: .NET Basic - Funcón quitar Acentos

esto es precisamente lo que estaba buscando y he encontrado un ejemplo
Código:
Tengo una funcion para eliminar acentos con .NET FrameWork 2.0 :

 

Imports System
Imports System.Text
Imports System.Text.RegularExpressions.Regex

 

Dim reg As RegularExpressions.Regex

Dim textoOriginal As String = "Mañana será otro dÃ*a"

'transformación UNICODE

Dim textoNormalizado As String = textoOriginal.Normalize(NormalizationForm.FormD)

'coincide todo lo que no sean letras y números ascii o espacio
'y lo reemplazamos por una cadena vacÃ*a.

reg = New RegularExpressions.Regex("[^a-zA-Z0-9 ]")
Dim textoSinAcentos As String = reg.Replace(textoNormalizado, "")
         
Debug.WriteLine(textoSinAcentos)
'muestra 'Manana sera otro dia'

 

 

El problema es que no doy con una que pueda utilizar con FrameWoek 1.*, solo consigo esto:

Dim ConSignos As String ="áà äéèëÃ*ìïóòöúùüÃÀÄÉÈËÃÃŒÃÓÒÖÚÙÜçÇ"
Dim SinSignos As String ="aaaeeeiiiooouuuAAAEEEIIIOOOUUUçÇ"
Dim v as integer
Dim texto as string

for(v=0;v<SinSignos.Length;v++) {

 Dim i As string=ConSignos.Substring(v,1)
 Dim j As string=SinSignos.Substring(v,1)
 
 texto=texto.replace(i,j)
}

Sabe alguien de otra funcion??
Voy a comprobar a ver que es lo que hace esto.

Pero si alguien la la tiene cuens que nos la mande!!

Saludos
  #4 (permalink)  
Antiguo 10/12/2008, 11:18
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 9 meses
Puntos: 50
Respuesta: .NET Basic - Funcón quitar Acentos

Entonces mientras espera tomando un café a que te hagamos tu tarea.

Investiga lo que te dice Peter y deja de estar esperando a que te lo den todo.
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
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 06:49.