Artículos
Java

Validar si un dato es numérico con Patrones en Java

31/Mar/2009

En el artículo Validar si un dato es numérico en Java veíamos como de una forma muy sencilla y mediante la transformación de cadenas en enteros podíamos validar si un dato es numérico en Java.

Si bien, ese ejemplo, válido para aprender a programar con Java, se nos quedaría corto para ejemplos reales.

Una buena forma, como han apuntado algunos de nuestros visitantes, es utilizar patrones sobre las cadenas de texto.

Lo primero que vamos a definir es el patrón que detecte que una cadena sea un número. Para ello indicaremos que la cadena tenga dígitos y que estos puedan aparecer N veces.

De esta manera nuestro patrón sería el siguiente:

[0-9]*

Otra forma de representar un dígito es \d. Por lo tanto nuestro patrón sería

\\d*

Hay que tener cuidado y escapar la barra invertida. Para ello la duplicamos la barra invertida.

Ahora deberemos ejecutar el patrón sobre la cadena. La gestión de patrones y expresiones regulares en Java se realiza mediante la librería java.util.regex y sus clases Matcher y Pattern. Aunque también tenemos el método .matches(), el cual se puede ejecutar sobre una String.

Esto último será lo que hagamos para ejecutar el patrón:

String cadenaUno = "1234";
		
if (cadenaUno.matches("[0-9]*"))
  System.out.println("Es un número");
else
  System.out.println("No es un número");

O con el otro patrón:

String cadenaUno = "1234";
		
if (cadenaUno.matches("\\d*"))
  System.out.println("Es un número");
else
  System.out.println("No es un número");

Podéis probar a cambiar el contenido del String para probar los diferentes comportamientos.

Vídeos sobre Java

Disfruta también de nuestros artículos sobre Java en formato vídeo. Aprovecha y suscribete a nuestro canal.

Test Java

¿Te atreves a probar tus habilidades y conocimiento en Java con nuestro test?

Test Java
Suscribir
Notificar de
guest
18 Comentarios
Recientes
Anteriores Más votados
Opiniones integradas
Ver todos los comentarios