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

Evitar caracteres especiales en Java

Estas en el tema de Evitar caracteres especiales en Java en el foro de Java en Foros del Web. Hola mi pregunta es si en la API de Java hay ya alguna clase que en un String me detecte si tiene caracteres especiales, como ...
  #1 (permalink)  
Antiguo 03/02/2009, 12:57
 
Fecha de Ingreso: diciembre-2008
Mensajes: 29
Antigüedad: 15 años, 4 meses
Puntos: 0
Pregunta Evitar caracteres especiales en Java

Hola mi pregunta es si en la API de Java hay ya alguna clase que en un String me detecte si tiene caracteres especiales, como %*$´", es decir que los String que tengan letras de la A-Z, Numeros o _, me los acepte y los otros no, o algo parecido, alguien sabe algo?

Salu2 y gracias

Esque si no me va a tocar hacer un macro if anidado para ver todo el string y comprobarlo, algo que veo ineficaz.... pero si no hya otro remedio...
  #2 (permalink)  
Antiguo 03/02/2009, 14:19
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 3 meses
Puntos: 260
Sonrisa Respuesta: Evitar caracteres especiales en Java

Hola,

Puedes usar "Expresiones Regulares" y String.matches().
Te permite validar si una cadena coincide con un patrón.

Saludos,
  #3 (permalink)  
Antiguo 04/02/2009, 09:03
 
Fecha de Ingreso: diciembre-2008
Mensajes: 29
Antigüedad: 15 años, 4 meses
Puntos: 0
De acuerdo Respuesta: Evitar caracteres especiales en Java

Mmmm, las expresiones regulares hasta hora son desconocidas para mi, pero se que se puede hacer con ellas tambien...

Aun asi he encontrado algo que se podria programar facilmente, Creas un string con las letras numeros correctos llamado ok, luego recorres el string a validar y lo contrastas con el ok, y si al final todos los caracteres coinciden... PREMIO !!!!

Es algo mas complicado que las expresiones regulares pero puede ser util,

Saludos y gracias por el interes..

xax_007
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 13:16.