Ya me queme la cabeza y no puedo encontrar la Exprecion Regular para una serie
Citar
20,30,56,78,98
Tiene que cumplir con las siguentes Caracteristicas
- Pueden ser [0-9]*
- No puede escribirse un solo numero, tiene que ser una serie
- Puenden ser numeros infinitos, no tiene limite
- Tiene que ir separados por una Coma
- El numero final NO puede terminar con coma ni con cualquier otro signo terminal
Parece Sencillo pero no pude hacerlo, ya tengo dias pensandole aunque paresca tonto pero no logro completar la Exprecion Regular.Aqui el codigo!!! ("La exprecion Regular esta mal")
Código
import javax.swing.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Enumeracion {
public static void main (String[] args) {
String Cadena;
ExpRegu Obj=new ExpRegu();
for(int x=0;x<20;x++){
Cadena=JOptionPane.showInputDialog("Cadena para Procesar");
if(Obj.Comparacion(Cadena)){
JOptionPane.showMessageDialog(null,"Si es Correcta la Cadena");
}else{
JOptionPane.showMessageDialog(null,"No es Correcta la Cadena");
}
}
}
}
class ExpRegu{
public boolean Comparacion(String Cadena)throws java.util.regex.PatternSyntaxException{
String ExprecionRegular="(^[0-9]*|^[0-9]*+[,])+([0-9]*+[,]|[,]+[0-9]*+[,])+([0-9]*$)";
Pattern InicialExprecion = Pattern.compile(ExprecionRegular);
Matcher Patron=InicialExprecion.matcher(Cadena);
if(Patron.find()){
return true;
}else{
return false;
}
}
}
en verdad les agradeceria infinitamente su ayuda...!










Autor




En línea











