Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/09/2008, 19:05
SebasSebas
 
Fecha de Ingreso: junio-2008
Mensajes: 71
Antigüedad: 15 años, 10 meses
Puntos: 0
Duda con Expresiones Regulares

Hola a tod@s.

Tengo una duda con expresiones regulares.

Supongamos que tengo una expresión regular cualquiera y quiero aplicar la misma expresión pero solo con un pequeño cambio.

Creo que con ejemplo se verá mejor. (Esta expresión regular me la copié de software prefabricado y la coloco solo como ejemplo):

Código PHP:
        preg_match_all('~\[img(\s+width=\d+)?(\s+height=\d+)?(\s+width=\d+)?\](.+?)\[/img\]~is'$message$matchesPREG_PATTERN_ORDER); 
Eso se aplica a img y ¿que tal si quiero aplicárselo a más cosas?. Supongan que quiero aplicar eso mismo, pero para embed.

Podría hacerlo dos veces

Código PHP:
        preg_match_all('~\[img(\s+width=\d+)?(\s+height=\d+)?(\s+width=\d+)?\](.+?)\[/img\]~is'$message$matchesPREG_PATTERN_ORDER);

        
preg_match_all('~\[embed(\s+width=\d+)?(\s+height=\d+)?(\s+width=\d+)?\](.+?)\[/embed\]~is'$message$matchesPREG_PATTERN_ORDER); 
Me parece que así haría el trabajo, pero creo que es una tontería duplicar la función en lugar de "jugar" con la expresión. Y este es el punto que no tengo la "certeza" de como jugar con ella.

Hasta ahora creo que así es como me conviene para lo que busco.

Código PHP:
        preg_match_all('~\[(?:img|embed)(\s+width=\d+)?(\s+height=\d+)?(\s+width=\d+)?\](.+?)\[/(?:img|embed)\]~is'$message$matchesPREG_PATTERN_ORDER); 
¿Estoy bien? ¿esa mecánica me sirve para el futuro sea la expresión que sea?

Ojalá me respondan, porque en esto es donde ando más en blanco y sin guia. Casi sin importar lo que leo quedo igual

Gracias adelantadas.