• Lunes 23 de Diciembre de 2024, 00:50

Autor Tema:  Expresiones Regulares En Java...  (Leído 2548 veces)

Bauer

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Expresiones Regulares En Java...
« en: Jueves 1 de Noviembre de 2007, 03:26 »
0
Hola antes que nada soy nuevo en el foro asi que Hola ( y todo el foro dice "hola :lol: "), tengo una duda con respecto a expresiones regulares:

digamos que leo de un archivo una cadena de caracteres que son una suma y lo evaluo por medio de la expresion :

"^d%* \+ d%*=d%*$"

que acepta 1 numero, luego el caracter '+' luego otro numero luego el caracter '=' y luego otro numero
asumiendo que la expresion es aceptada como puedo asignar:

int a = primer numero decimal;
int b = segundo numero decimal;
int c = tercer numero decimal;


directamente desde la expresion es decir sin tener que hacer la referencia desde charAt() y luego trasnformar con  Integer.parseInt();
¿¿es esto posible?? unsure:
¿¿como?? :blink:
estoy realizando un trabajo y ahorraria mucho codigo poder hacer esto!


Espero respuestas!
PD: si, si se lo preguntan ya estube googleando  <_<

chuidiang

  • Miembro MUY activo
  • ***
  • Mensajes: 123
  • Nacionalidad: es
    • Ver Perfil
    • http://www.chuidiang.com
Re: Expresiones Regulares En Java...
« Respuesta #1 en: Jueves 1 de Noviembre de 2007, 14:35 »
0
Hola:

No lo he probado, pero las expresiones regulares son muy similares a las de perl y la forma de funcionamiento se parece. Me he puesto a mirar en la API a ver si veo algo parecido a como se hace en perlo y parece que sí lo hay, aunque como te comento, no lo he probado.

Mete entre paréntesis en la expresión regular lo que quieres capturar, es decir, las dos cifras y el resultado de la suma.

Con la clase Pattern y el patrón, obten un Matcher. El Matcher tiene un método group() que devuelve por índice el contenido de cada uno de esos paréntesis. Insisto, no he probado. En la API veo que se admite lo de los paréntesis en el patrón para obtener secuencias y este es el método que parece que las devuelve.

Se bueno.

chuidiang

  • Miembro MUY activo
  • ***
  • Mensajes: 123
  • Nacionalidad: es
    • Ver Perfil
    • http://www.chuidiang.com
Re: Expresiones Regulares En Java...
« Respuesta #2 en: Jueves 1 de Noviembre de 2007, 15:49 »
0
Hola:

Al final lo he probado y he hecho un pequeño ejemplo, Mira el segundo apartado: extraer partes de la cadena

Se bueno.

Bauer

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Re: Expresiones Regulares En Java...
« Respuesta #3 en: Jueves 1 de Noviembre de 2007, 23:21 »
0
vaya! parece que es lo que estaba buscando,  :kicking: , ahora mismo lo pruebo gracias chuidiang!

Bauer

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Re: Expresiones Regulares En Java...
« Respuesta #4 en: Miércoles 7 de Noviembre de 2007, 01:07 »
0
si efectivamente es lo que buscaba, gracias, bueno hablando de expresiones regulares, necesito ayuda con una expresion, como iria una expresion para validar una cadena que solo contubiera a y b,  pero que aparecieran por lo menos 1 ocurrencia de cada caracter?
supongo que seria algo como

(a+|b+)+

mas la cadena aceptada seria erronea, ya que
"aaaaaaa" seria aceptada pero necesito que aparesca almenos una vez b
de modo que

aaaab = aceptada
ab = aceptada
ba = aceptada
a = rechazada
b = rechazada

esa es la idea, alguien sabe como?