elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Ayuda con Exprecion Regular Serie Numerica
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda con Exprecion Regular Serie Numerica  (Leído 4,818 veces)
cyberserver

Desconectado Desconectado

Mensajes: 162


Lo que una mente crea, otra lo destruye


Ver Perfil WWW
Ayuda con Exprecion Regular Serie Numerica
« 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

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

 :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
  1. import javax.swing.*;
  2. import java.util.regex.Matcher;
  3. import java.util.regex.Pattern;
  4.  
  5.  
  6. public class Enumeracion {
  7.  
  8.    public static void main (String[] args) {
  9.     String Cadena;
  10.     ExpRegu Obj=new ExpRegu();
  11.     for(int x=0;x<20;x++){
  12.     Cadena=JOptionPane.showInputDialog("Cadena para Procesar");
  13.     if(Obj.Comparacion(Cadena)){
  14.     JOptionPane.showMessageDialog(null,"Si es Correcta la Cadena");
  15.     }else{
  16.     JOptionPane.showMessageDialog(null,"No es Correcta la Cadena");
  17.     }
  18.     }
  19.  
  20. }
  21.  
  22.  
  23. }
  24. class ExpRegu{
  25. public boolean Comparacion(String Cadena)throws java.util.regex.PatternSyntaxException{
  26. String ExprecionRegular="(^[0-9]*|^[0-9]*+[,])+([0-9]*+[,]|[,]+[0-9]*+[,])+([0-9]*$)";
  27.        Pattern InicialExprecion = Pattern.compile(ExprecionRegular);
  28.     Matcher Patron=InicialExprecion.matcher(Cadena);
  29.  
  30.    if(Patron.find()){
  31.     return true;
  32.    }else{
  33.     return false;
  34.    }
  35.    }
  36.  
  37. }
  38.  


en verdad les agradeceria infinitamente su ayuda...!


« Última modificación: 23 Diciembre 2010, 23:10 pm por cyberserver » En línea






sapito169


Desconectado Desconectado

Mensajes: 628



Ver Perfil
Re: Ayuda con Exprecion Regular Serie Numerica
« Respuesta #1 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


En línea

raul338


Desconectado Desconectado

Mensajes: 2.633


La sonrisa es la mejor forma de afrontar las cosas


Ver Perfil WWW
Re: Ayuda con Exprecion Regular Serie Numerica
« Respuesta #2 en: 27 Diciembre 2010, 21:16 pm »

Código:
^(?:\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
En línea

cyberserver

Desconectado Desconectado

Mensajes: 162


Lo que una mente crea, otra lo destruye


Ver Perfil WWW
Re: Ayuda con Exprecion Regular Serie Numerica
« Respuesta #3 en: 27 Diciembre 2010, 23:59 pm »

aii caray mil gracias en verdad me hisiste un gran favor
« Última modificación: 28 Diciembre 2010, 22:30 pm por cyberserver » En línea






cyberserver

Desconectado Desconectado

Mensajes: 162


Lo que una mente crea, otra lo destruye


Ver Perfil WWW
Re: Ayuda con Exprecion Regular Serie Numerica
« Respuesta #4 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,

Citar
10,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.!


En línea






Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Xml o Expreción Regular?
PHP
LeandroA 1 2,169 Último mensaje 24 Marzo 2009, 23:20 pm
por Pablo Videla
Exprecion regular.. letras-numero guines y guines bajos..
Programación General
Kase 7 11,434 Último mensaje 23 Agosto 2011, 14:38 pm
por raul338
exprecion regular.... n__n
Programación General
Kase 3 2,259 Último mensaje 19 Agosto 2012, 06:48 am
por sistemx
Programa convertidor de base numerica C++-->C (requiero ayuda)
Programación C/C++
Daidronix 1 4,557 Último mensaje 9 Mayo 2014, 09:08 am
por eferion
Cómo Resolver Serie Numérica en JAVA? (Ayuda)
Java
gh1E 1 4,387 Último mensaje 20 Mayo 2015, 06:56 am
por engel lex
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines