Foros del Web » Programando para Internet » PHP »

expresiones regulares con distintos resultados

Estas en el tema de expresiones regulares con distintos resultados en el foro de PHP en Foros del Web. Hola estoy teniendo con expresiones regulares , dependiendo del formato de string busca o no…. Mu expreg es: /<a[^>]*>(.*)<\/a>/i Así no busca de modo correcto ...
  #1 (permalink)  
Antiguo 24/05/2009, 11:01
 
Fecha de Ingreso: noviembre-2003
Mensajes: 267
Antigüedad: 20 años, 4 meses
Puntos: 4
expresiones regulares con distintos resultados

Hola estoy teniendo con expresiones regulares , dependiendo del formato de string busca o no….
Mu expreg es: /<a[^>]*>(.*)<\/a>/i

Así no busca de modo correcto
Código PHP:
$out="<a href='cualquiercosa'>José</a><a href='cualquiercosados'>perro</a><a href='cualquiercosa'>Bounce</a><a>Flash</a><a>mono</a><a    href='cualquiercosa' title='hola pepe'  >pepe</a>"
pero si lo separo de este modo con saltos de linea funcciona,
Código PHP:
$out="<a href='cualquiercosa'>José</a> 
<a href='cualquiercosados'>perro</a> 
<a href='cualquiercosa'>Bounce</a> 
<a>Flash</a> 
<a>mono</a> 
<a    href='cualquiercosa' title='hola pepe'  >pepe</a>"

osea no busca de modo correcto en texto plano ,,, o al menos no logro hacerlo ,,
el primer ejemplo me da un array de un piso solamante y el segundo me da uno de 6 pisos como deve ser ,,, por que pasa esto ?? y como paso mi texto plano a este modo en caso de ser la unica posibilidad
espero me puendan dar una mano con esto ,,,

Muchas gracias
  #2 (permalink)  
Antiguo 24/05/2009, 11:07
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 15 años, 11 meses
Puntos: 2534
Respuesta: expresiones regulares con distintos resultados

mmm... creo que ya has repetido este post antes?


bueno, debes procurar leer siempre la documentación
http://www.forosdelweb.com/f18/aport...s-pcre-646110/

el problema, es que la expresión en muy permisiva... osea, el meta-carácter . (punto) significa "todo" y creeme, es todo!!

para evitar este comportamiento debes usar el modificador U

con esto, se captura solo si la expresión mínima se completa...

/<a[^>]*>(.*)<\/a>/Ui
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
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:19.