hola , aqui te paso , bueno os paso, una funcioncilla que limpia todos los tags html y deja el texto limpio como una patena.
Código PHP:
function html_net($url) {
$file=@file($url);
$text=implode(" ",$file);
// substituye los retornos de carro y las tabulaciones por un espacio
$text = ereg_replace("[\r\t]+"," ",$text);
//borra los head los estilos y los scripts
$text = preg_replace("/(<head.*?>.*?<\/head>)/is",' ',$text);
$text = preg_replace("/(<script.*?>.*?<\/script>)/is",' ',$text);
$text = preg_replace("/(style.*?>.*?<\/style>)/is", ' ' ,$text);
//borra los tags html
$text = ereg_replace("<[^>]*>", ' ',$text);
$text = str_replace(" ","", $text);
$text = ereg_replace('&#([0-9]+);',chr('\1').' ',$text);
/*limpia de puntuaciones y caracteres sobrantes
variando los elementos de la expresion respeta puntos comas y demas*/
$text = ereg_replace("-|[{}();\-\,\.\'\!*?*¡*\"]+|</[a-z0-9]+>|[\n\r\t]+",' ',$text);
//sustituye los comentarios
$text = ereg_replace("<[^>]*>", ' ',$text);
//systituye los numeros por un espacio
$text = ereg_replace("[[:digit:]\%]+"," ",$text);
// substituye cualquier grupo de caracteres en blanco por un espacio unico
$text = ereg_replace("[[:blank:]]+"," ",strip_tags($text));
$retour = $text;
return $retour;
}//fin funcion
Espero que te sirva,
PD : cuidado a la ley de propiedad intelectual!
arriba no sale la expresion correctamente esta es la buena
$text = ereg_replace("-|[{}();\-\,\.\'\!*?*¡*\"]+|</[a-z0-9]+>|
[\n\r\t]+",' ',$text);
un saludo