Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: выдирание текста из HTML
Форумы портала PHP.SU » PHP » Регулярные выражения » выдирание текста из HTML

Страниц (1): [1]
 

1. inkor - 06 Марта, 2010 - 09:25:50 - перейти к сообщению
Здравствуйте!

имеется почти 1млн. страниц из них нужно скопировать только текст статей (может содержать теги <br>, <p ....>,<a>), содержащий минимум 500 символов, он заключен в <div> либо <td>. Сложность заключается в том, что нужный текст находится во вложенных тегах например:

<div .....>
<div ...>
<div..>
текст
</div>
</div>
</div>

кое какой код я набросал, но как написать РВ чтоб находило парные теги и копировало текст из них?

CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2.  
  3. $html = file_get_contents('$page');
  4.  
  5. preg_match("#\<div[^\>]*\>|\<td[^\>]*\>([а-яА-Я0-9a-zA-Z]{500, }\<\/div\>|\<\/td\>)#Uis" ,$html,$text);        
  6.                
  7.                 echo $text['1'];


, но как написать РВ чтоб находило парные теги и копировало текст из них?
2. moskitos80 - 13 Апреля, 2010 - 16:23:24 - перейти к сообщению
Можно использовать "preg_match_all" и позиционные проверки.
Вот ссылка конкретно на этот вопрос:
хттп://phpclub.ru/detail/article/regexp_2

 

Powered by ExBB FM 1.0 RC1