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

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

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

 

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

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

тема: регулярка
 
 автор: hsasha   (01.06.2007 в 13:00)   письмо автору
 
 

Здравствуйте!
есть текст

<td class="titlesection bd_b titlecol" align="left" width="100%">
ROOMS
</td>
</tr>
</tbody></table></td></tr>
<script language="JavaScript" type="text/javascript">
<!--

   img[1]="1.jpg"
   title_img[1]="junior suite"
   size[1]="width=\"350\" height=\"300\""

   
      img[2]="111.jpg"
   title_img[2]="room - detail"
   size[2]="width=\"350\" height=\"300\""

   
      img[3]="2.jpg"
   title_img[3]="room - detail"
   size[3]="width=\"350\" height=\"300\""

   
   
max_size[2]=new Array()
max_size[2]['img']="width=\"370\" height=\"320\""
max_size[2]['width']="width=\"370\""

-->
</script>

Нужно "ROOMS", "1.jpg", "junior suite","111.jpg", "room - detail","2.jpg", "room - detail",
img[], title_img[] может быть 1 а может и несколько, так же этих текстов может быть несколько..
составил правило,но это бред:) и не полностью работает:

preg_match_all('|<td width=\"100%\" class=\"titlesection bd_b titlecol\" align=\"left\" 
>(.*)</td>\s</tr>\s</table></td></tr>\s<script language=\"JavaScript\" 
type=\"text/javascript\">\s<(.*)img\[([0-9]+)\]=\"(.*)\"(.*)
title_img\[([0-9]+)\]=\"(.*)\"(.*)-->(.*)</script>|Uis',$feed,$res);


подскажите пожалуйста как такое организовать..

   
 
 автор: hsasha   (01.06.2007 в 17:04)   письмо автору
 
   для: hsasha   (01.06.2007 в 13:00)
 

Что никто не знает?

   
 
 автор: hsasha   (01.06.2007 в 17:43)   письмо автору
 
   для: hsasha   (01.06.2007 в 17:04)
 

Вот подправьте меня пожалуйста

preg_match_all('#<td[^>]+width="100%"[^>]+class="titlesection\sbd_b\stitlecol"[^>]+align="left"[^>]+>(.*)(?=<\/td>\s<\/tr>\s<\/table><\/td><\/tr>\s<script\slanguage="JavaScript"\stype="text\/javascript">\s<!--)(.*)img\[([0-9]+)\]="(.*)\stitle_img\[([0-9]+)\]="(.*)"#Uisx',$feed,$res,PREG_SET_ORDER);

   
 
 автор: Саня   (02.06.2007 в 02:19)   письмо автору
 
   для: hsasha   (01.06.2007 в 13:00)
 

Так пойдёт?
<?
preg_match_all
('!<td class="titlesection bd_b titlecol"[^>]+>(.*)</td>!isU'$txt$title);
preg_match_all('!img\[\d+\]="([^"]+)".*title_img\[\d+\]="([^"]+)"!isU'$txt$m);

print 
trim($title[1][0])."<br/><pre>";
print_r($m);

   
 
 автор: hsasha   (02.06.2007 в 11:54)   письмо автору
 
   для: Саня   (02.06.2007 в 02:19)
 

Я так не смогу все вместе сложить
Таких текстов может быть несколько,соответственно попатают не все вхождения если:

for($i=0;$i<count($title[1]);$i++)
{
print ($title[1][$i])."<br><pre>";
print($m[$i][1])."<br>";
print($m[$i][2])."<br>";
}

т.е. должно быть
- rooms
- img1.jpg
title1
img2.jpg
title2
- rooms2
img1.jpg
title1
img2.jpg
title2
img3.jpg
title3
вот так:)

   
Rambler's Top100
вверх

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