elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 01:26  


Tema destacado: ¡Aprende hacking con práctica! - WarZone, el wargame de elhacker.net

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java (Moderadores: Debci, Leyer)
| | | |-+  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 1,776 veces)
cyberserver

Desconectado Desconectado

Mensajes: 157


Lo que una mente crea, otra lo destruye


Ver Perfil WWW
Ayuda con Exprecion Regular Serie Numerica
« en: 23 Diciembre 2010, 23:08 »

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
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...!


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






sapito169


Desconectado Desconectado

Mensajes: 421



Ver Perfil
Re: Ayuda con Exprecion Regular Serie Numerica
« Respuesta #1 en: 27 Diciembre 2010, 20:36 »

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.371


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 »

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: 157


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 »

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






cyberserver

Desconectado Desconectado

Mensajes: 157


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 »

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
Secuencia numerica...
Desafíos - Wargames
vivachapas 1 5,003 Último mensaje 31 Mayo 2007, 23:44
por vivachapas
Secuencia numerica « 1 2 »
Desafíos - Wargames
shoshonee 16 5,113 Último mensaje 18 Agosto 2007, 23:22
por ^Winder^
combinacion numerica
Scripting
seki003 1 2,461 Último mensaje 21 Noviembre 2008, 13:53
por Novlucker
Xml o Expreción Regular?
PHP
LeandroA 1 835 Último mensaje 24 Marzo 2009, 23:20
por DonVidela
Exprecion regular.. letras-numero guines y guines bajos..
Programación General
Kase 7 949 Último mensaje 23 Agosto 2011, 14:38
por raul338
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines