[ Foro de Java ]

separar numeros y signos de una cadena

11-Mar-2020 23:56
Invitado (Josh Nichols)
4 Respuestas

Hola Buenas Tardes!!
tengo de proyecto que ingrese en un jtextfield una expresion por ejemplo (5+3)-3*5 o cual sea que se ingrese en el jtextfield y que imprima de esa expresion cuales son numeros y cuales son los signos por ejemplo:
Numeros : 5 3 3 4
Signos: ( ) + - *

ya e intentado pero no se si estoy muy torpe o si esta algo curioso el como hacerlo ayuda porfa!


12-Mar-2020 00:04
Nacho Cabanes (+84)

Incluye el programa que tienes hecho hasta ahora, para ver qué problemas tiene


12-Mar-2020 00:21
Invitado (Josh Nichols)

la ultima vez que intente fue con un ejemplo de internet solo que cambie los nombres y eso es el siguiente:

int cadena=(Integer.parseInt(entrada.getText()));  //mi jtextfield se llama entrada
       
       final String cad= Integer.toString(cadena);
         
       final String regex = "([\\d.]+)|[-+*/()]";
       final Pattern pattern = Pattern.compile(regex);
       final Matcher matcher = pattern.matcher(cad);
         

           
         while (matcher.find())
{
                   
if (matcher.group(1) != null) //si se capturó algo en el grupo 1 (el primer conjunto de paréntesis)
{

                               numerosjeje.setText(matcher.group());  //numerosjeje se llama mi label del jfrom donde mostrara los numeros
}
else
{
//System.out.println("Símbolo: " + matcher.group());
                               signosjeje.setText(matcher.group());
//signos se llama mi label del jfrom donde mostrara los los signos
}
                   
                   
}


el problema que tengo con este es que cuando en el textfield ingreso un signo o una letra automaticamente me manda error que es este:

ejemplo ingrese 12357+
For input string: "12357+"


12-Mar-2020 07:59
Nacho Cabanes (+84)

No puedes hacer un "parseInt" de algo que contiene símbolos además de cifras numéricas.

¿Todos los números van a ser de una cifra?


12-Mar-2020 17:32
Invitado (Josh Nichols)

o ya, entonces cual seria la mejor opción para hacer este proyecto?
los numeros pueden ser de cualquier cifra que el usuario desee ingresar , solo que sean números enteros,






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)