Título: Retos de Expresiones Regulares Publicado por: ~ Yoya ~ en 3 Octubre 2010, 17:02 pm Buenas a todos, todavía no he visto el primer reto de expresiones regulares...
Las reglas:
Bueno un reto facil, para empezar XD Reto #1 Código: Objetivo: Capturar Hola mundo Título: Re: Retos de Expresiones Regulares Publicado por: leogtz en 3 Octubre 2010, 17:31 pm Código
Reto #2: Agregar un carácter al inicio de cada palabra usando una expresión regular. Título: Re: Retos de Expresiones Regulares Publicado por: ~ Yoya ~ en 3 Octubre 2010, 18:16 pm Código Resultado: Código: ¬¬hOla¬¬munDo¬¬xD Reto #3: Eliminar las palabras de una cadena que contenga entre 3 y 4 palabras, incluyendo caracteres con tildes o raros, ejemplo: Ö ×Ø Cadena: Código: xxxxxx DD DD@D #|!c asasØ a/aaaW 56a Título: Re: Retos de Expresiones Regulares Publicado por: leogtz en 4 Octubre 2010, 06:54 am No entiendo ese último, y honestamente si lo veo algo dificil no pienso contestar :xD, tengo demasiada tarea. :-(
Título: Re: Retos de Expresiones Regulares Publicado por: #!drvy en 5 Octubre 2010, 01:15 am Código
No se me ocurre nada asi que.. Reto #3 Eliminar letras mayusculas y numeros asi como cualquier caracter tipo " , ñ , ( etc... de esta cadena: Código: o234m$g·%· we 31234 %· (will) ""· WEHATE/POLICE (r0ock) (yñço&u) Saludos Título: Re: Retos de Expresiones Regulares Publicado por: Shell Root en 5 Octubre 2010, 02:30 am No creo que la RegExp de @drvy | BSM, funcione!
Código
Título: Re: Retos de Expresiones Regulares Publicado por: ~ Yoya ~ en 5 Octubre 2010, 03:02 am En realidad funciona ya que el texto a buscar en este caso es constante...
Bueno aquí la respuesta del reto 4 Código
Reto #5 Bueno vamos con la validación de datos usando expresiones regulares nombre@dominio-es/en/....com/org/net/,etc... La constante aqui son @ - . En el nombre puede contener caracteres alfanuméricos y no puede contener mas de 5 como longitud el nombre. En el dominio solo se aceptan letras excepto las e, i, t,z... En el - solo se acepta letras pero no mas de dos y la primera debe ser en mayúscula y la segunda minúscula.... Después del punto se puede aceptar .com, .es, cl, ar, etc... pero deben ser minúscula Ejemplo Código: YoyA@gmaal-ES.com ->True Diviértanse xD Título: Re: Retos de Expresiones Regulares Publicado por: raul338 en 5 Octubre 2010, 15:50 pm Código: ^(?![.,])(?:[\w!#$%&\'*+\/=?^_`{|}~\-]+(?:[.,][\w!#$%&\'*+\/=?^_`{|}~\-]+)*|(?>\".+\"))+(?![.,])@(?>\[(?:(?>2(?>5[0-5]|[0-4]?\d)|1?\d{1,2})\.){3}(?:(?>2(?>5[0-5]|[0-4]?\d)|1?\d{1,2}))\]|(?![.,])[\w!#$%&\'*+\/=?^_`{|}~\-]+(?:[.,][\w!#$%&\'*+\/=?^_`{|}~\-]+)*(?:\.[a-zA-Z]+))$ http://foro.elhacker.net/php/expresion_regular-t282130.0.html;msg1392077#msg1392077 (http://foro.elhacker.net/php/expresion_regular-t282130.0.html;msg1392077#msg1392077) Creo que te gane de antemano :P Reto #6 Siguiendo con el tema de las validaciones, Hacer una expresion regular para validar una URI completa (url + directorios + GET por ejemplo) http://www.elhacker.net <- True foro.elhacker.net/post123.html <- True elhack/juanking <- Flase https://elh4xor.org/view?id=123 <- True https://elh4xor.org/view?id=123#post2 <- True https://elh4xor.org/view=123 <- False PD: si se presentan varios, sera premiado (?) el que mas respete el RFC 2396 (http://www.faqs.org/rfcs/rfc2396.html) Título: Re: Retos de Expresiones Regulares Publicado por: raul338 en 26 Octubre 2010, 23:15 pm Bueno,... viendo que nadie mas respondio :P la expreg que pedia era
Código: ^(?:(?>ht|f)tps?://)?(?:\w+[.-]\w+)+(?::\d+)?(?:\/[\w\-\.\?\,\'+&%\$_]*)*(?:\??(?:[\w\-\._]+=[\w\-\.\?\,\\'\/+%\$_]*&?)*)?(?:\#[\w]+)?$ Código: ^(?: jeje.... no presento reto por ahora, asi que es libre :xD Título: Re: Retos de Expresiones Regulares Publicado por: Psyke1 en 29 Octubre 2010, 11:02 am @Reto 5
Esta es la mia: Código: ^[\w\._\-]{2,}@[\w\._\-]{2,}\.[a-zA-Z]{2,4}(\.[a-zA-Z]{2,4})?$ PD: raul338 a ver si un dia te pillo por el msn y me resuelves algna duda... ;) DoEvents! :P Título: Re: Retos de Expresiones Regulares Publicado por: ~ Yoya ~ en 30 Octubre 2010, 20:22 pm Haber quien plantea un nuevo reto xD :-(
Título: Re: Retos de Expresiones Regulares Publicado por: Psyke1 en 5 Noviembre 2010, 14:36 pm Haber quien plantea un nuevo reto xD :-( No llores gatito :-* :laugh: :laugh: :laugh:Reto #7 Sacar los números con decimales, puntos y negativos de un texto haciendo las validaciones necesareas. Ej: Citar hola 3455345 sdfsdf 345435,3454 sdfsdf j ksjdh skdjfh 1.233.555,34534 asdasd as 344.34 qweqwe 23,324.324 qweqwe -234324324 Los validos serian : Citar 3455345 345435,3454 1.233.555,34534 -234324324 A por ello! :D DoEvents! :P Título: Re: Retos de Expresiones Regulares Publicado por: ~ Yoya ~ en 5 Noviembre 2010, 15:20 pm Código
Código: 3455345 Reto #8 Eliminar los espacios en blancos que estén en medio, las condiciones son que a la derecha debe estar una letra y a la izquierda un numero. Cadena: Código: hola 3455345 sdfsdf 345435,3454 sdfsdf j ksjdh skdjfh 1.233.555,34534 asdasd as 344.34 qweqwe 23,324.324 qweqwe -234324324 Título: Re: Retos de Expresiones Regulares Publicado por: Psyke1 en 5 Noviembre 2010, 16:33 pm @Yoya
No vale esa RegExp para el Reto 7. Solo puede captar números validos, fijate bien en el ejemlpo que puse ;) Segun tu RegExp estos serian numeros validos (y no lo son): Citar 344.34 El punto en este caso no se usara como decimal, sino para separar miles, asi:23,324.324 Citar 76.234.345.456.788.999.000,345345345 Jeje, ahora no es tan facil :-* DoEvents! :P Título: Re: Retos de Expresiones Regulares Publicado por: Psyke1 en 5 Noviembre 2010, 17:28 pm @Reto 7
Código: (?![.,])-?(\d{1,3}\.|\d+)(\d{3}\.?\d{3})*(\,?\d+)? DoEvents! :P Título: Re: Retos de Expresiones Regulares Publicado por: ~ Yoya ~ en 5 Noviembre 2010, 19:01 pm Bueno aunque se vea fácil es muy complicado cuando intentas crear una expresión regular para validar o capturar cualquier texto, en este caso es un texto fijo y lo pude hacer.
Código
Salida: Código: 3455345 La regexp que creaste no filtra correctamente, debes tratar de crear una regexp mas estricta de modo que si x parte no cumple con x condición, la regexp se pare y no devuelva ninguna referencia. Trata de hacer una Regexp que devuelva una sola Referencia mejor y no 3. Se podría hacer fácilmente una regexp que valide cualquier texto, a mi se me ocurriría dividir primero el texto y luego validarlo pero es mejor hacerlo todo en una sola Regexp y que devuelva una sola referencia xD. Mas tarde miro como me hago para crear una sola regexp o que alguno muestre su regexp para validar cualquier texto xD. Título: Re: Retos de Expresiones Regulares Publicado por: Psyke1 en 6 Noviembre 2010, 00:46 am Ook Yoya, gracias por la explicación, me pongo con el Reto 8 mañana... :P
DoEvents! :P Título: Re: Retos de Expresiones Regulares Publicado por: ~ Yoya ~ en 23 Marzo 2011, 02:26 am Buenas, estaba pensando que podemos hacer un benchmark de las Regexp para ver cual es el patron mas optimizado para cada problema.
Saludos. Título: Re: Retos de Expresiones Regulares Publicado por: cyberserver en 10 Marzo 2013, 18:25 pm Buenos días.
Estos trabajando con este texto: Citar FN Thomson Reuters Web of Knowledge VR 1.0 PT S AU O'Flynn, B Torre, G Fernstrom, M Winkler, T Lynch, A Barton, J Angove, P O'Mathuna, SC AF O'Flynn, B. Torre, G. Fernstrom, M. Winkler, T. Lynch, A. Barton, J. Angove, P. O'Mathuna, S. C. BE Leonhardt, S Falck, T Mahonen, P TI Celeritas - A wearable sensor system for interactive digital dance theatre SO 4th International Workshop on Wearable and Implantable Body Sensor Networks (BSN 2007) Y estoy interesado en separar el texto de todas las etiqueta FN,VR........TI,SO por partes. Para poder tener la parte de la etiqueta correspondiente por ejemplo Etiqueta: SO Contenido: 4th International Workshop on Wearable and Implantable Body Sensor Networks (BSN 2007) Creen ustedes que seria buena idea usar expresiones regulares, y si fuera el caso cual me recomiendas, estaba pensando quiza en buscar las primeras letras de un renglón que fueran mallusculas. Caray a quien engaño siempre me han costado mcuho trabajo las expresiones, alguien me puede ayudar a solucionar. Título: Re: Retos de Expresiones Regulares Publicado por: cyberserver en 10 Marzo 2013, 18:51 pm Ya tengo para seleccionar solo las etiquetas:
Código: /^([A-Z]{1}+[A-Z|0-9]{1}+\s)/gm Pero cómo puedo hacer para seleccionar lo demas. Título: Re: Retos de Expresiones Regulares Publicado por: cyberserver en 10 Marzo 2013, 19:28 pm No no puedo.
Lo que intento hacer es que casi casi coloques dentro de la expresión el nombre de la etiqueta y te de como resultado el contenido de esta. Si alguien puede ayudarme. |