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

expresiones regulares

Estas en el tema de expresiones regulares en el foro de Java en Foros del Web. Buenas, tengo una duda gente, busqué y busqué ejemplos de expresiones regulares pero no encontré algo bueno; tengo un problema, en una variable de tipo ...
  #1 (permalink)  
Antiguo 08/10/2014, 14:23
 
Fecha de Ingreso: octubre-2014
Mensajes: 1
Antigüedad: 9 años, 6 meses
Puntos: 0
expresiones regulares

Buenas, tengo una duda gente, busqué y busqué ejemplos de expresiones regulares pero no encontré algo bueno; tengo un problema, en una variable de tipo String tengo lo siguiente:

String numero = "123 45 67";

El caso es que quiero verificar si el string contiene solo números y si no es así como en el anterior ejemplo pues que me indique las posiciones donde hay espacios; la verificación de solo números la hice con una expresion regular queme funciona y sirve para verificar ("^(?://+|-)?//d+$") pero no lo logro aun con las posiciones de los espacios en blanco, ayuda por favor.
  #2 (permalink)  
Antiguo 09/10/2014, 00:34
Avatar de Profesor_Falken  
Fecha de Ingreso: agosto-2014
Ubicación: Mountain View
Mensajes: 1.323
Antigüedad: 9 años, 8 meses
Puntos: 182
Respuesta: expresiones regulares

Buenas,

Le expresion regular te permite validar si una cadena cumple ciertas reglas de formato o no (y devuelve true o false), pero no te puede devolver en que "posicion" se encuentra un caracter concreto.

Para esto ultimo debes hacer una busqueda con indexOf.

Por cierto, para verificar si son todo numeros te bastaria con esto:

"[0-9]+"

O esto:

"\\d+"


Un saludo
__________________
If to err is human, then programmers are the most human of us
  #3 (permalink)  
Antiguo 09/10/2014, 01:48
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años
Puntos: 306
Respuesta: expresiones regulares

Para validar sólo eso tu regex es muy retorcida.

Si no quieres los espacios, hazle primero un replace y elimínalos.

Si quieres separar los números, haz un split.

Para validar que solo hay números y espacios en blanco, algo así
Cita:
[\\d|\\s]+
Si además que exista por lo menos un número
Cita:
\\s*\\d[\\s|\\d]*

http://docs.oracle.com/javase/7/docs...x/Pattern.html

Cita:
\s A whitespace character: [ \t\n\x0B\f\r]
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.

Etiquetas: expresion, regular
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 15:38.