Como puedo extraer un texto que esta entre dos tags html de un archivo html?

keo01
11 de Octubre del 2005
Hola buenas, mirar tengo que extraer gran cantidad de datos de unos archivos html, para luego procesarlos.
El caso es que los datos que me interesan estan entre <font face=\"Arial\" size=\"1\"> y </font> siempre, por tanto desconozco que funcion utilizar para extraer el texto que se encuentra entre esos dos tags.

Estoy un poco perdido, he intentado encontrar algo en la documentacion de PHP pero no he sacado nada en claro.
Existe alguna funcion que haga esto? En caso contrario, mas o menos cual seria el algoritmo para realizar esto?

¿Como lo hariais vosotros?

Cualquier cosa que me podais decir me seria de ayuda.

Gracias por adelantado.

mandm (Loop)
11 de Octubre del 2005
usa preg_replace();


$cadena="<font face='blah blah'>Hola</font>";

$cadena=preg_replace("#<font(.*?)>(.*?)</font>#si","\2",$cadena)

devuelve "Hola"

usa eregi,

$cadena=eregi("<font(.+)>(.+)</font>",$cadena,$regs);

$regs[2] es igual a "Hola"

El problema viene cuando son varias apariciones del tag "strong", entonces tendrás que anidarlo en un bucle de control interante, e ir eliminando dicha aparicion, lo que veo podría ser algo frustrante.

Sería en todo caso más simple examinar palabra por palabra, y en caso de resultar "<font" apartar dicho texto hasta la aparición de "</font>" y sobre ése texto ...

es decir que cadena sea ......

$cadena="<font blah blah blah > Hola </font>";

y después,

$cadena = strip_tags($cadena);

$cadena es ahora igual a "Hola"

Existen muchas opciones para hacer eso, solo bastan dos dedos de frente.....


Suerte y me contás después cómo te fue !