Foro de elhacker.net

Programación => Java => Mensaje iniciado por: NikNitro! en 14 Diciembre 2013, 17:41 pm



Título: Aplicacion teórica Java.utils.regex??
Publicado por: NikNitro! en 14 Diciembre 2013, 17:41 pm
Buenas. Buscaba alguna aplicación de la clase regex pero que tenga que ver con las expresiones regulares.

Veamos, me explico; tengo que hacer un trabajo para aprobar la asignatura de Teoría de Automatas y Lenguajes Formales, pues voy bastante justito; y había pensado en usar la clase regex... Alguien que haya estudiado las expresiones regulares, de contexto libre... Podría darme algún consejillo?

Lo que me gustaría hacer de trabajo es un programita simple donde se vea la utilidad de estas (las expresiones y lenguajes regulares). Pero no estoy seguro de que me sirva para algo el paquete regex...:s

Espero haberme explicado mejor de como creo...

Salud ;)


Título: Re: Aplicacion teórica Java.utils.regex??
Publicado por: egyware en 15 Diciembre 2013, 18:22 pm
ANTLR? En realidad no entendí tu pregunta.

O deseas un ejemplo con Regex?


Título: Re: Aplicacion teórica Java.utils.regex??
Publicado por: NikNitro! en 16 Diciembre 2013, 14:44 pm
Puff.. Esque es algo dificil de explicar si no has dado la carrera :s (Al menos creo que en españa se da en todas las facultades esta asignatura :s)

Las expresiones regulares son todas aquellas que se pueden definir con un autómata finito no determinista (AFND)...

Salud.


Título: Re: Aplicacion teórica Java.utils.regex??
Publicado por: egyware en 16 Diciembre 2013, 14:48 pm
No necesito que me expliques que es una expresión regular, necesito que me expliques ¿Cual es tu pregunta?

Por cierto donde vivo aprobé el curso de Lenguajes Formales (que incluye expresiones regulares)


Título: Re: Aplicacion teórica Java.utils.regex??
Publicado por: ThinkByYourself en 16 Diciembre 2013, 22:45 pm
¿En serio? ¿Eres universitario y hablas de las Regex como algo... difícil y que te quieres sacar de encima sin enterarte de qué va? Vaaaaya tela. Pues mira noi, yo no soy universitario y te puedo decir con toda seguridad que las expresiones regulares son más clave que cualquier otro lenguaje de programación (y de no-programación también) con el que las quieras comparar, chavalín. El porqué te lo dejo a ti, universitario, para que lo saques tú solito. Y mira, si la cosa era de hacer una aplicación, yo dejé una misma aquí en este foro:
http://foro.elhacker.net/java/probar_expresiones_regulares_en_java-t394352.0.html
Espero y me alegro que te pueda ser de ayuda, aunque también te digo que no verás nada de expresiones regulares en el código xDDD Pero si sabes compilar y ejecutar un programa en Java este código te puede ir muy guay para testearlas y ver el poder de las regex. Saludos


Título: Re: Re: Re: Aplicacion teórica Java.utils.regex??
Publicado por: raul338 en 16 Diciembre 2013, 23:06 pm
Las expresiones regulares son todas aquellas que se pueden definir con un autómata finito no determinista (AFND)...
Viendo esto supongo que solo te puede servir un compilador simple como el del lenguaje micro y saber interpretar las BNF sintactica.

¿En serio? ¿Eres universitario y hablas de las Regex como algo... difícil y ...
Lo que tu planteas en realidad son meta expresiones regulares. Lo  que el necesita es demostrar el uso de algo mas teorico. Por eso recomiendo un analizador lexico/sintactico.

Define un AFD y despues pasalo a C y listo.

Enviado desde mi LG-E610 mediante Tapatalk


Título: Re: Aplicacion teórica Java.utils.regex??
Publicado por: NikNitro! en 17 Diciembre 2013, 11:16 am
@egyware Lo siento si me he equivocado contigo, pero entenderas que siga que alguien que no está en la carrera no sabrá casi nada acerca de esta asignatura teórica...

No he dicho en ningún momento que sea algo que quiero quitarme de encima. Solo pido ejemplos de una aplicación de éstas; tanto para comprenderlas mejor como para ver que se me ocurre, pues debo crear "un proyecto sobre algo relacionado con el tema".

Saludos ;)


Título: Re: Aplicacion teórica Java.utils.regex??
Publicado por: egyware en 17 Diciembre 2013, 11:54 am
Para la próxima vez no lo hagas, no necesariamente debe estar en la Uni para saber de cierto X tema. Yo mismo aprendí muchas cosas estando en primaria/secundaria por mi cuenta y luego en la Uni aprendí la razón de esas cosas y aquí hay gente mucho más capaz que yo, así que no me extraña que haya gente que sepa muchas cosas sin haber ido a la Uni. Bueno ya te han dado respuestas mucho más teórica que la que te voy dar ahora.
Ejemplo:
ANTLR (te lo había mencionado antes, pero ni caso me hiciste)

Es un compilador de compiladores, con ese programa puedes especificar las palabras de ese lenguaje usando expresiones regulares y además utilizando una cierta anotación (que ya no recuerdo como se llama) uno puede especificar las reglas de la gramática.
Lo más probable que en tu curso empiecen con expresiones regulares y como detectar si una palabra pertenece a la expresión regular con maquinas de estados finitos, para luego ver parsers RR(K) o LL(K), etc... A nosotros nos hicieron detectar si un cierto archivo contiene solo palabras del lenguaje Java utilizado Flex (buscalo en google), la siguiente tarea fue crear un parser utilizando Bison en el cual debíamos detectar si el archivo pertenecía al lenguaje o no.

Bueno espero que te sirva de algo, saludos!


Título: Re: Aplicacion teórica Java.utils.regex??
Publicado por: ThinkByYourself en 20 Diciembre 2013, 01:00 am
Buenísimo lo del ANTLR, eggyware. Mis respetos a los universitarios, y perdón por mi poca formalidad, no sé qué demonios pasa conmigo, lo siento señores. Y de nuevo gracias a este foro que es la bomba por gente que es la re-panocha y le participa. Un saludo!