Jump to content


Photo

Converter Html Para Texto


  • Faça o login para participar
3 replies to this topic

#1 CSFInfo

CSFInfo

    Normal

  • Usuários
  • 81 posts
  • Sexo:Não informado

Posted 29/07/2005, 02:48

Li um tópico sobre o assunto resolvi tentar estou conseguindo o problema agora é o excesso de espaços no texto utilizei duas ER mais não adiantou.

Também tentei abrir uma URL no qual apareceu as tags
<!--
-->

// Lê o arquivo de uma URL.
$codigo_fonte = file ('http://www.site.com.br');

// Lista o código fonte por linhas
foreach ($codigo_fonte as  $linhas_codigo) {

// Converte para HTML
$tags_html = htmlspecialchars("$linhas_codigo");

 //ER para Retirar tags HTML/Javascript/Espaços de cada linha
$er_tags = array ( "'<script[^>]*>.*?</script>'si", 
                   "'<[\/\!]*?[^<>]*?>'si",       
                   "'&(quot|#34);'i",              
                   "'((<.*?>)([^<]*))'si");         


$texto .= preg_replace($er_tags, "", $linhas_codigo);


}
// Retira excesso de espaços
$texto = preg_replace("#(( ){2,})#i"," ",$texto);
// Retira espaços astes e depois do texto
$texto=trim($texto);

echo "<textarea  cols=100 rows=20>$texto</textarea>";


Coloquei em textarea para visualizar melhor

Edição feita por: CSFInfo, 29/07/2005, 02:54.


#2 Rauffer

Rauffer

    Normal

  • Usuários
  • 76 posts
  • Sexo:Masculino
  • Localidade:Garopaba - SC

Posted 29/07/2005, 04:37

Da uma olhada ae, ve se é isso que queria...
<?
$codigo_fonte = file ('http://www.site.com.br');// Lê o arquivo de uma URL.

foreach ($codigo_fonte as  $linhas_codigo) { // Lista o código fonte por linhas
	$texto .= strip_tags($linhas_codigo); // retira as tags HTML
}

$texto = ereg_replace("( |\t|\n|\r){2,}", " ", $texto); // retira os espaços grandes
echo "<textarea  cols=100 rows=20>$texto</textarea>"; // mostra o texto na textarea
?>

Abraço
Bacharel em Sistemas de Informação

#3 CSFInfo

CSFInfo

    Normal

  • Usuários
  • 81 posts
  • Sexo:Não informado

Posted 29/07/2005, 11:12

Valeu ficou bem simples.

Só um detalhe no final e início ficou um espaço.

$texto=trim($texto);

#4 Klaus

Klaus

    @ ubuntu jaunty

  • Ex-Admins
  • 7924 posts
  • Sexo:Masculino
  • Localidade:127.0.0.1

Posted 29/07/2005, 11:15

$texto = ereg_replace("( |\t|\n|\r){2,}", " ", $texto);

também pode ser escrito como:

$texto = preg_replace ("\s{2,}", " ", $texto);
Klaus Paiva
Conheça também: Taperás




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq