Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как загрузить страницу по HTTP а потом убрать все теги и оставить только текст?
 
 автор: СерегаВЕБ   (17.01.2005 в 21:26)   письмо автору
 
 

Как загрузить страницу по HTTP а потом убрать все теги и оставить только текст?

   
 
 автор: cheops   (17.01.2005 в 21:41)   письмо автору
 
   для: СерегаВЕБ   (17.01.2005 в 21:26)
 

Можно воспользоваться следующим скриптом:
<?php
  $link 
"http://www.softtime.ru/"
  
$fd fopen($link"r"); 
  
$text="";               
  if (!
$fd) echo "Запрашиваемая страница не найдена"
  
// Чтение содержимого файла в переменную text 
  
else while (!feof ($fd)) $text .= fgets($fd4096); 
  
// Закрыть открытый указатель файла 
  
fclose ($fd);    
  
$search = array ("'<script[^>]*?>.*?</script>'si",  // Вырезает javaScript
                 
"'<[\/\!]*?[^<>]*?>'si",           // Вырезает HTML-теги
                 
"'([\r\n])[\s]+'",                 // Вырезает пробельные символы
                 
"'&(quot|#34);'i",                 // Заменяет HTML-сущности
                 
"'&(amp|#38);'i",
                 
"'&(lt|#60);'i",
                 
"'&(gt|#62);'i",
                 
"'&(nbsp|#160);'i",
                 
"'&(iexcl|#161);'i",
                 
"'&(cent|#162);'i",
                 
"'&(pound|#163);'i",
                 
"'&(copy|#169);'i",
                 
"'&#(\d+);'e");                    // интерпретировать как php-код

  
$replace = array ("",
                  
"",
                  
"\\1",
                  
"\"",
                  
"&",
                  
"<",
                  
">",
                  
" ",
                  
chr(161),
                  
chr(162),
                  
chr(163),
                  
chr(169),
                  
"chr(\\1)");

  
$text preg_replace($search$replace$text);
  echo 
$text;
?> 

Адрес в $link, результат - в $text.

   
 
 автор: СерегаВЕБ   (18.01.2005 в 14:35)   письмо автору
 
   для: cheops   (17.01.2005 в 21:41)
 

Спасибо.

   
 
 автор: СерегаВЕБ   (19.01.2005 в 15:49)   письмо автору
 
   для: СерегаВЕБ   (18.01.2005 в 14:35)
 

А как заменит все <a href="ссылка"> на <ENCODE>MASTER USB ссылка</ENCODE> ?

   
 
 автор: cheops   (19.01.2005 в 23:14)   письмо автору
 
   для: СерегаВЕБ   (19.01.2005 в 15:49)
 

Попробуйте вот это регулярное выражение
<?php
  $text 
'<a href="ссылка">ссылка</a>';
  
$pattern '|<a[\s]+href[\s]*=[\s]*"([^"]*)[^>]*>[^>]*>|i';
  
$replacement "<ENCODE>MASTER USB \\1 </ENCODE>";
  echo 
preg_replace($pattern$replacement$text);
?>

   
 
 автор: SS   (20.01.2005 в 00:49)   письмо автору
 
   для: СерегаВЕБ   (17.01.2005 в 21:26)
 

Или с помощью HomeSite - выделить весь текст и правой кнопкой выбрать команду на удаление html-тэгов.

   
 
 автор: [CHOL]Scorpion   (31.07.2005 в 17:24)   письмо автору
 
   для: SS   (20.01.2005 в 00:49)
 

2 SS >>> Причём тут софт установленый на компе, и программа, обрабатывающая страницы на сервере?

[Поправлено модератором]

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования