Test Foro de elhacker.net SMF 2.1

Programación => Programación General => Java => Mensaje iniciado por: cyberserver en 23 Diciembre 2010, 23:08 PM

Título: Ayuda con Exprecion Regular Serie Numerica
Publicado por: cyberserver en 23 Diciembre 2010, 23:08 PM
Hola amigos, como siempre necesito su ayuda!!!

Ya me queme la cabeza y no puedo encontrar la Exprecion Regular para una serie

Citar20,30,56,78,98

Tiene que cumplir con las siguentes Caracteristicas

:huh: :huh: :huh: :rolleyes: :rolleyes: 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 (java) [Seleccionar]

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...!
Título: Re: Ayuda con Exprecion Regular Serie Numerica
Publicado por: sapito169 en 27 Diciembre 2010, 20:36 PM
trata de partirlo con
  String[] result = serie.split(",");
y despues de compruebas que todos los pedasos de la cadena son numeros
Título: Re: Ayuda con Exprecion Regular Serie Numerica
Publicado por: raul338 en 27 Diciembre 2010, 21:16 PM
^(?:\d+\,)+\d+$

:P

Descripcion

^Inicio de string
(?:\d+\,)+Serie, (?: ) es para no capturarlo y que se repita, adentro tiene que haber uno o mas numeros (\d+) seguido de una coma (\,)
\d+Tiene que terminar con un numero
$Fin del string

Se que practicamente te lo di en bandeja, pero tienes que aprender por algo, y las regexp (expresiones regulares) no son muy faciles a la primera :P
Título: Re: Ayuda con Exprecion Regular Serie Numerica
Publicado por: cyberserver en 27 Diciembre 2010, 23:59 PM
aii caray mil gracias en verdad me hisiste un gran favor
Título: Re: Ayuda con Exprecion Regular Serie Numerica
Publicado por: cyberserver en 31 Diciembre 2010, 19:55 PM
Hola de nuevo.!  ;D ;D ;D

Oie creo que tambien se puede con esta exprecion
Citar^(\d+\,)+\d+$

Solo le quite lo de ?:



Oie perdon que vuleva a preguntar pero por mas que le intento no me salen las expreciones, ayer estuve asta las 2 de la mañana queriendo hacer otra exprecion y no puede!!  :(

Lo que quiero que haga es que Valide solo los numeros de Toda la serie,

Citar10,20,40,70,10,80

Como puedo hacerle,
Pienso que es basandome de la exprecion
Citar^(\d+\,)+\d+$

Pero en el espacio donde se comprueba la coma (\,) podria colocar una exprecion que omitiera o brincara la coma, para al momento de Agruparla en programacion
Comprovador.group(1) no apareciera.

Muchas gracias por su ayuda.!