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

Форум Регулярные Выражения

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Новости с чyжого сайта

Сообщения:  [1-10]    [11-20]   [21-30]   [31-40]  [41-43] 

 
 автор: sidPR   (22.06.2007 в 16:04)   письмо автору
 
   для: kasmanaft   (22.06.2007 в 12:48)
 

Продолжение темы:

http://softtime.ru/forum/read.php?id_forum=6&id_theme=39467&page=1

   
 
 автор: kasmanaft   (22.06.2007 в 12:48)   письмо автору
 
   для: sidPR   (21.06.2007 в 22:41)
 

Можно пример?

ЗЫЖ
Перечитал счас ... кое-чего не понял:
> То есть? Нужно вырезать все <TD></td>, в которых нет таблиц?
> (а вместо этого
(прим. если внутри есть таблица) вырезать <TD></td> из этой таблицы??)
___________________________________________________
Нет, тоесть нужно вырезать всю инфу где встречается даже такое
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
В этом примере регулярка будет вырезать примерно такой кусок "<td>
<TABLE><TR><TD>TEST" а нужно тольео слово Test вот на таких этапах регулярка работает косячно :(


Я вроде это и имел ввиду.. Не оч понятно написал, конечно ...
Попробуйте тогда вот такую штуку: #<td[^>]*>(((?!<td[^>]*>).)*)</td>#is
(не проверял, но вроде должно работать)
Можно вместе с предыдущим его использовать...

ЗЫЖЖ если что-то опять не так понял, давайте начнем новую тему, эта уже раздулась сильно...

   
 
 автор: sidPR   (21.06.2007 в 22:41)   письмо автору
 
   для: kasmanaft   (21.06.2007 в 22:21)
 

он работает но криво вырезает :(

   
 
 автор: kasmanaft   (21.06.2007 в 22:21)   письмо автору
 
   для: sidPR   (21.06.2007 в 22:04)
 

Ыыы... Попробуйте сохранить страницу, да file_get_contents('123.txt'), думаю, в этом дело.
Хотя.... рекурсия эта ресурсоемкая штука - может быть где-то чего-то не хватает, хз :(
Попробуйте, в конце концов, поменьше страницу какую-нибудь обработать..

   
 
 автор: sidPR   (21.06.2007 в 22:04)   письмо автору
 
   для: kasmanaft   (21.06.2007 в 18:31)
 


<?php 
set_time_limit
(100);
$text file_get_contents('http://softtime.ru/forum/read.php?id_forum=6&id_theme=37964&page=1'); 
preg_match_all('#<td(?>[^>]*)>((?>((?!(<td(?>[^>]*)>|</td>)).)+)|(?R))*</td>#s'$text$arr);
echo 
count($arr[1]);
for(
$i=0$i <= count($arr[1])-1$i++){
    echo 
$arr[1][$i]."<br>";
}

?> 



500 Ошибку пишет сохраняю через zende studio

Даже без for всеравно не пашет :(

   
 
 автор: kasmanaft   (21.06.2007 в 18:31)   письмо автору
 
   для: sidPR   (21.06.2007 в 17:24)
 

Из-за file_get_contents('http://softtime.ru/fo....') ?
Не знаю.. у меня соображает долго (относительно), но работает...
(пробовал запускать в PHP Expert Editor - пустой экран, пошел в Zend Studio - там нормально отработал скрипт)

   
 
 автор: sidPR   (21.06.2007 в 17:24)   письмо автору
 
   для: sidPR   (21.06.2007 в 15:06)
 

500 Ошибку кстате выдает =\

   
 
 автор: sidPR   (21.06.2007 в 15:06)   письмо автору
 
   для: kasmanaft   (21.06.2007 в 14:06)
 

Гениально! супер! великолепно... многим пригодится эта регулярка, лично от меня огромное спасибо а тобы я так и извращялся бы для каждой строки своя регулярка!!! Респект вам kasmanaft!

   
 
 автор: kasmanaft   (21.06.2007 в 14:06)   письмо автору
 
   для: sidPR   (20.06.2007 в 16:35)
 

Ндааа.... так и с ума сойти не долго :D


<?php
$text 
file_get_contents('http://softtime.ru/forum/read.php?id_forum=6&id_theme=37964&page=1');
preg_match_all('#<td(?>[^>]*)>((?>((?!(<td(?>[^>]*)>|</td>)).)+)|(?R))*</td>#s'$text$regs);
foreach(
$regs[0] as $val)
    echo 
$val.str_repeat("\r\n"15);
?>

   
 
 автор: sidPR   (20.06.2007 в 17:41)   письмо автору
 
   для: sidPR   (20.06.2007 в 16:35)
 

я тут вычитал про "Рекурсивные шаблоны" возможно это както поможет я в регулярках полный нуб

   

Сообщения:  [1-10]    [11-20]   [21-30]   [31-40]  [41-43] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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