Foros del Web » Programando para Internet » PHP »

Me pueden ayudar un poco con expresiones regulareS?

Estas en el tema de Me pueden ayudar un poco con expresiones regulareS? en el foro de PHP en Foros del Web. Hola amigos que tal. Saben tengo una duda espero me puedan ayudar. Lo que busco entender es como, usando una expresión regular compatible con PERL, ...
  #1 (permalink)  
Antiguo 02/12/2011, 20:13
 
Fecha de Ingreso: septiembre-2007
Ubicación: PyRoot
Mensajes: 1.515
Antigüedad: 17 años, 3 meses
Puntos: 188
Me pueden ayudar un poco con expresiones regulareS?

Hola amigos que tal.

Saben tengo una duda espero me puedan ayudar.

Lo que busco entender es como, usando una expresión regular compatible con PERL, verificar que una cadena llena de letras, símbolos o lo que sea tenga n o más números.

Por ejemplo yo me imagino que debería de funcionar algo como ésto:

Código PHP:
Ver original
  1. pattern = "/^(?=(0-9){n,})$/";


No soy muy bueno en las Regulars....

Alguien me puede echar una mano por favor. :D
Gracias.
__________________
Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +.
  #2 (permalink)  
Antiguo 03/12/2011, 10:25
 
Fecha de Ingreso: septiembre-2007
Ubicación: PyRoot
Mensajes: 1.515
Antigüedad: 17 años, 3 meses
Puntos: 188
Respuesta: Me pueden ayudar un poco con expresiones regulareS?

No he encontrado la solución. ¿Tendre que hacerlo por fuerza bruta, validando caracter a caracter y usando un contador?

Si alguien sabe hacerlo con expresión regular agradezco la ayuda.

Saludos.
__________________
Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +.
  #3 (permalink)  
Antiguo 03/12/2011, 10:37
Avatar de charlyalegret  
Fecha de Ingreso: septiembre-2011
Ubicación: Barcelona
Mensajes: 705
Antigüedad: 13 años, 2 meses
Puntos: 140
Respuesta: Me pueden ayudar un poco con expresiones regulareS?

Hola. No te puedo ayudar mucho, pero a lo mejor te sirve el regular-expressions-cheat-sheet-v2 en pdf (lo puedes encontrar en google).
Por lo que he visto es que según pone, debes usar corchetes para referirte a un rango [1-9], mientras que paréntesis es para un grupo...

Bueno, espero que te sea de ayuda!
  #4 (permalink)  
Antiguo 03/12/2011, 11:50
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años, 8 meses
Puntos: 461
Respuesta: Me pueden ayudar un poco con expresiones regulareS?

no entiendo para que quieres utilizar una expresión regular para validar algo que puede tener lo que sea, mas bien deberias de ver es si esta llena unicamente segun veo que es tu problema, sin embargo para mas información sobre estas revisa aca http://www.forosdelweb.com/f18/aport...s-pcre-646110/
__________________
aprende d tus errores e incrementa tu conocimientos
it's not a bug, it's an undocumented feature By @David
php the right way
  #5 (permalink)  
Antiguo 03/12/2011, 12:16
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: Me pueden ayudar un poco con expresiones regulareS?

Probá com esta expresión regular

^(.*[0-9].*){n}$

donde n es un entero que indica cual es el mínimo de números que debe contener la cadena

Podés chequearla aquí
http://regexlib.com/RETester.aspx

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #6 (permalink)  
Antiguo 03/12/2011, 15:40
 
Fecha de Ingreso: septiembre-2007
Ubicación: PyRoot
Mensajes: 1.515
Antigüedad: 17 años, 3 meses
Puntos: 188
Respuesta: Me pueden ayudar un poco con expresiones regulareS?

emprear Eso es lo que buscaba. Muchisimas gracias, ahora comienizo a jugar con lo que me has dado para obtener la expresión que necesito. =D

mil gracias.
------------------------

Cita:
Iniciado por carlos_belisario Ver Mensaje
no entiendo para que quieres utilizar una expresión regular para validar algo que puede tener lo que sea, mas bien deberias de ver es si esta llena unicamente segun veo que es tu problema, sin embargo para mas información sobre estas revisa aca http://www.forosdelweb.com/f18/aport...s-pcre-646110/
Solo para reducir lineas de código, frecuentemente hago eso. Hacer lo menos posible de código.

Que tal si quieres verificar que una cadena tenga un número mínimo de elementos, por ejemplo la seguridad de password.

Quieres verificar que tenga por lo menos 3 números ---> Pues para esto nos sirve esta expresión regular.

Saludos.
__________________
Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +.
  #7 (permalink)  
Antiguo 03/12/2011, 15:50
Avatar de charlyalegret  
Fecha de Ingreso: septiembre-2011
Ubicación: Barcelona
Mensajes: 705
Antigüedad: 13 años, 2 meses
Puntos: 140
Respuesta: Me pueden ayudar un poco con expresiones regulareS?

Cita:
^(.*[0-9].*){n}$
No lo veo claro... según entiendo, no tendría que ser {n,} para decir "como mínimo n"? Y ese n, no se refiere a toda la expresión, y no sólo a los números? Lo digo sin tener ni idea y con la intención de aprender, basándome en lo que interpreto en el regular-expressions-cheat-sheet, que no sé si será correcto...

Saludos y suerte!
  #8 (permalink)  
Antiguo 03/12/2011, 16:03
 
Fecha de Ingreso: septiembre-2007
Ubicación: PyRoot
Mensajes: 1.515
Antigüedad: 17 años, 3 meses
Puntos: 188
Respuesta: Me pueden ayudar un poco con expresiones regulareS?

ese es una tabla de referencia para los que ya saben trabajar con Expresiones regulares.

La expresión que el amigo emprear nos ha regalado si es correcta.

En lenguaje natural, la expresión dice así:

La cadena tiene opcionalmente cualquier caracter (.) 0 o mas veces (*) debe contener números en el intervalo [0-9], sigue opcionalmente con cualquier caracter, y esto ocurre {n,} n o mas veces.

Es todo.

Un saludo
__________________
Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +.
  #9 (permalink)  
Antiguo 04/12/2011, 03:01
Avatar de charlyalegret  
Fecha de Ingreso: septiembre-2011
Ubicación: Barcelona
Mensajes: 705
Antigüedad: 13 años, 2 meses
Puntos: 140
Respuesta: Me pueden ayudar un poco con expresiones regulareS?

Muchas gracias iovan por la aclaración y explicación tan detallada! He estado mirandolo con más detalle las tablas y ahora lo veo más claro! Saludos

Etiquetas: expresiones, poco
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:09.