Foros del Web » Programando para Internet » PHP »

expresiones regulares ayudaaa

Estas en el tema de expresiones regulares ayudaaa en el foro de PHP en Foros del Web. Bueno, necesito que me ayuden con la siguiente exprsion regular Código PHP: <?php $patron  =  "/<a href=\"()\"/" ; $string  =  '<div class="thumb"><a href="/fire_beach_widescreen-wallpapers.html"><em>1178 downloads</em><img src="/thumbs/fire_beach_widescreen-t1.jpg" alt="Fire Beach Widescreen Wallpaper" class="thumb_img"><span class="mini-tags"><span class="tag-wide tips" title="Fire Beach Widescreen :: Wide Wallpaper"></span></span></a><br><a href="/fire_beach_widescreen-wallpapers.html" title="Fire Beach Widescreen Wallpaper" class="thumblink">Fire Beach Widescreen</a></div>' ; preg_match (  $patron ,  ...
  #1 (permalink)  
Antiguo 23/07/2009, 11:20
 
Fecha de Ingreso: enero-2009
Ubicación: Chile
Mensajes: 191
Antigüedad: 15 años, 3 meses
Puntos: 2
expresiones regulares ayudaaa

Bueno, necesito que me ayuden con la siguiente exprsion regular

Código PHP:
<?php
$patron 
"/<a href=\"()\"/";
$string '<div class="thumb"><a href="/fire_beach_widescreen-wallpapers.html"><em>1178 downloads</em><img src="/thumbs/fire_beach_widescreen-t1.jpg" alt="Fire Beach Widescreen Wallpaper" class="thumb_img"><span class="mini-tags"><span class="tag-wide tips" title="Fire Beach Widescreen :: Wide Wallpaper"></span></span></a><br><a href="/fire_beach_widescreen-wallpapers.html" title="Fire Beach Widescreen Wallpaper" class="thumblink">Fire Beach Widescreen</a></div>';
preg_match$patron$string$matches );
?>
en patron necesito que me digan, como hago osea que pongo para obtener en el $string la parte que dice /fire_beach_widescreen-wallpapers.html dentro del href, osea quiero obtener solo el /fire_beach_widescreen-wallpapers.html porfavor ayudaa....
  #2 (permalink)  
Antiguo 23/07/2009, 11:59
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: expresiones regulares ayudaaa

Puedes hacerlo asi

Código php:
Ver original
  1. <?php
  2. $patron = "/<a href=\"(.*?)[^>]>/";
  3. $string = '<div class="thumb"><a href="/fire_beach_widescreen-wallpapers.html"><em>1178 downloads</em><img src="/thumbs/fire_beach_widescreen-t1.jpg" alt="Fire Beach Widescreen Wallpaper" class="thumb_img"><span class="mini-tags"><span class="tag-wide tips" title="Fire Beach Widescreen :: Wide Wallpaper"></span></span></a><br><a href="/fire_beach_widescreen-wallpapers.html" title="Fire Beach Widescreen Wallpaper" class="thumblink">Fire Beach Widescreen</a></div>';
  4. preg_match( $patron, $string, $matches);
  5. echo $matches[1];
  6. ?>

Los paréntesis sirven para agrupar caracteres. Y esta expresion hace que cree un segundo valor en el array indicando que encontro ese grupo de caracteres, te lo acomoda en $matches[1]. Si por ejemplo hubieramos usado la expresion de esta forma
Código php:
Ver original
  1. $patron = "/(<a href=\")(.*?)([^>]>)/";
Esto crea 4 grupos el principal que es todo. y luego 3 mas conforme a cada parentesis.
  #3 (permalink)  
Antiguo 23/07/2009, 12:20
 
Fecha de Ingreso: enero-2009
Ubicación: Chile
Mensajes: 191
Antigüedad: 15 años, 3 meses
Puntos: 2
Respuesta: expresiones regulares ayudaaa

Muchas gracioas amigo, me sirivio mucho, solo que era el array 1 el que contenia el link xcd muchas gracias, ogala este leno de gente como tu en este foro
  #4 (permalink)  
Antiguo 23/07/2009, 12:29
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: expresiones regulares ayudaaa

Hay muchos y con más conocimiento que yo
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 23:51.