Foros del Web » Programando para Internet » PHP »

Mal funcionamiento de Regexp

Estas en el tema de Mal funcionamiento de Regexp en el foro de PHP en Foros del Web. Hola a todos , tengo el siguiente code .... Código PHP: function  read_price ( $html ){ preg_match_all ( "<font class='blub15'>|(.*)|U" ,  $html ,  $data );  print_r ...
  #1 (permalink)  
Antiguo 24/11/2007, 09:47
 
Fecha de Ingreso: julio-2006
Mensajes: 96
Antigüedad: 17 años, 9 meses
Puntos: 2
Mal funcionamiento de Regexp

Hola a todos , tengo el siguiente code ....

Código PHP:
function read_price($html){
preg_match_all("<font class='blub15'>|(.*)|U"$html$data); 
print_r($data);

y me tira al ejecutarlo el siguiente error..

Warning: preg_match_all() [function.preg-match-all]: Unknown modifier '|' in /home/progetto/public_html/mercado/mck.php on line 25
Array ( )

la idea de esa regexp , es la siguiente yo le paso este html

Código:
<font class=blub15>U$S 1.00</font>
y me tendria que sacar U$s 1.00 , osea el precio digamos..pero no hace ni una ni otra y no se si estara mal la regexp.

Saludos
  #2 (permalink)  
Antiguo 24/11/2007, 13:31
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 19 años, 1 mes
Puntos: 17
Re: Mal funcionamiento de Regexp

Código PHP:
<?php
function read_price($html){ 
preg_match_all("#<font class=['\"]?blub15['\"]?>(.*)</font>#U"$html$data);
echo 
$data[1][0];
}
?>
Los delimitadores los tenés que poner al principio y al final de la cadena.
El caracter | no me parece de los más lindos para delimitar, lo reemplacé por #.
Además tenías un problema con la comilla que en tu expresión era requerida y en el HTML no estaba... puse que sea comilla simple, doble o que no esté.
  #3 (permalink)  
Antiguo 24/11/2007, 18:04
 
Fecha de Ingreso: julio-2006
Mensajes: 96
Antigüedad: 17 años, 9 meses
Puntos: 2
Re: Mal funcionamiento de Regexp

Cita:
Iniciado por Seppo Ver Mensaje
Código PHP:
<?php
function read_price($html){ 
preg_match_all("#<font class=['\"]?blub15['\"]?>(.*)</font>#U"$html$data);
echo 
$data[1][0];
}
?>
Los delimitadores los tenés que poner al principio y al final de la cadena.
El caracter | no me parece de los más lindos para delimitar, lo reemplacé por #.
Además tenías un problema con la comilla que en tu expresión era requerida y en el HTML no estaba... puse que sea comilla simple, doble o que no esté.
muchas gracias , lo pude solucionar al final.

Gracias !
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 03:50.