|
|
|
| Как выбрать из таблицы(не XML - обычная TABLE) текст не являющийся тегами и занести его в массив?
Где то я видел подобное, но вот найти никак не могу! | |
|
|
|
|
|
|
|
для: Port_Artur1
(04.02.2007 в 20:33)
| | Наверное, с помощью функции preg_match_all ... | |
|
|
|
|
|
|
|
для: ddhvvn
(04.02.2007 в 20:35)
| | В середине таблице встречаются объединённые ячейки и их местоположение постоянно меняется и неизвестно. А preg_match_all, как мне кажется используется когда вся таблица одинаковая.
Может я и не прав, поясните пожалуйста!
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<META http-equiv=Content-Type content="text/html; charset=windows-1251">
<META content="MSHTML 6.00.2600.0" name=GENERATOR></HEAD>
<BODY bgColor=#ffff99>
<TABLE width="100%" border=0>
<TBODY>
<TR align=middle bgColor=#ffff99>
<TD colSpan=7>
<DIV align=center><STRONG>Межгосударственные рейсы</STRONG></DIV></TD></TR>
<TR bgColor=#ffffcc>
<TD align=left width="15%">Москва </TD>
<TD width="15%">Боков </TD>
<TD width="10%">
<DIV align=center>1246 </DIV></TD>
<TD width="15%">
<DIV align=center>140</DIV></TD>
<TD width="15%">
<DIV align=center>20:05</DIV></TD>
<TD width="15%">
<DIV align=center>23:05</DIV></TD>
<TD width="15%">
<DIV align=center>116.30</DIV></TD></TR>
<TR bgColor=#ffff99>
<TD align=left width="15%">Парус </TD>
<TD width="15%">Ветер </TD>
<TD width="10%">
<DIV align=center>ежедн.</DIV></TD>
<TD width="15%">
<DIV align=center>151</DIV></TD>
<TD width="15%">
<DIV align=center>10:55</DIV></TD>
<TD width="15%">
<DIV align=center>14:03</DIV></TD>
<TD width="15%">
<DIV align=center>125.32</DIV></TD></TR>
<TR bgColor=#ffffcc>
<TD align=left width="15%">поле </TD>
<TD width="15%">небо </TD>
<TD width="10%">
<DIV align=center>357 </DIV></TD>
<TD width="15%">
<DIV align=center>151</DIV></TD>
<TD width="15%">
<DIV align=center>20:05</DIV></TD>
<TD width="15%">
<DIV align=center>23:10</DIV></TD>
<TD width="15%">
<DIV align=center>125.32</DIV></TD></TR>
<TR bgColor=#ffff99>
<TD align=left width="15%">Вода</TD>
<TD width="15%">огонь </TD>
<TD width="10%">
<DIV align=center>ч/д</DIV></TD>
<TD width="15%">
<DIV align=center>491</DIV></TD>
<TD width="15%">
<DIV align=center>10:30</DIV></TD>
<TD width="15%">
<DIV align=center>20:39</DIV></TD>
<TD width="15%">
<DIV align=center>370.52</DIV></TD></TR>
<TR bgColor=#ffffcc>
<TD align=left width="15%">Ветер </TD>
<TD width="15%">Поле </TD>
<TD width="10%">
<DIV align=center>ч/д</DIV></TD>
<TD width="15%">
<DIV align=center>119</DIV></TD>
<TD width="15%">
<DIV align=center>18:29</DIV></TD>
<TD width="15%">
<DIV align=center>21:04</DIV></TD>
<TD width="15%">
<DIV align=center>99.08</DIV></TD></TR>
<TR bgColor=#ffff99>
<TD align=left width="15%">Солнце </TD>
<TD width="15%">Луна</TD>
<TD width="10%">
<DIV align=center>ежедн.</DIV></TD>
<TD width="15%">
<DIV align=center>48</DIV></TD>
<TD width="15%">
<DIV align=center>16:30</DIV></TD>
<TD width="15%">
<DIV align=center>17:30</DIV></TD>
<TD width="15%">
<DIV align=center>39.90</DIV></TD></TR>
<TR bgColor=#ffff99>
<TD align=left colSpan=7>
<DIV align=center><STRONG>Межобластные рейсы</STRONG></DIV></TD></TR>
<TR bgColor=#ffffcc>
<TD align=left width="15%">Свет </TD>
<TD width="15%">Воздух </TD>
<TD width="10%">
<DIV align=center>ежедн.</DIV></TD>
<TD width="15%">
<DIV align=center>365</DIV></TD>
<TD width="15%">
<DIV align=center>3:50</DIV></TD>
<TD width="15%">
<DIV align=center>10:33</DIV></TD>
<TD width="15%">
<DIV align=center>319.05</DIV></TD></TR>
<TR bgColor=#ffff99>
<TD align=left width="15%">право </TD>
<TD width="15%">Дело </TD>
<TD width="10%">
<DIV align=center>ежедн.</DIV></TD>
<TD width="15%">
<DIV align=center>365</DIV></TD>
<TD width="15%">
<DIV align=center>23:12</DIV></TD>
<TD width="15%">
<DIV align=center>6:01</DIV></TD>
<TD width="15%">
<DIV align=center>316.00</DIV></TD></TR>
<TR bgColor=#ffffcc>
<TD align=left colSpan=7>
<DIV align=center><STRONG>Междугородние рейсы</STRONG></DIV></TD></TR>
<TR bgColor=#ffff99>
<TD align=left width="15%">Колода </TD>
<TD width="15%">Карта </TD>
<TD width="10%">
<DIV align=center>ежедн.</DIV></TD>
<TD width="15%">
<DIV align=center>140</DIV></TD>
<TD width="15%">
<DIV align=center>15:25</DIV></TD>
<TD width="15%">
<DIV align=center>18:19</DIV></TD>
<TD width="15%">
<DIV align=center>116.30</DIV></TD></TR>
<TR bgColor=#ffffcc>
<TD align=left width="15%">Карта </TD>
<TD width="15%">Колода </TD>
<TD width="10%">
<DIV align=center>ежедн.</DIV></TD>
<TD width="15%">
<DIV align=center>151</DIV></TD>
<TD width="15%">
<DIV align=center>12:26</DIV></TD>
<TD width="15%">
<DIV align=center>15:30</DIV></TD>
<TD width="15%">
<DIV align=center>125.32</DIV></TD></TR>
<TR bgColor=#ffffcc>
<TD align=left colSpan=7>
<DIV align=center><STRONG>Пригородные рейсы</STRONG></DIV></TD></TR>
<TR bgColor=#ffff99>
<TD align=left width="15%">Село </TD>
<TD width="15%">Город </TD>
<TD width="10%">
<DIV align=center>ежедн.</DIV></TD>
<TD width="15%">
<DIV align=center>48</DIV></TD>
<TD width="15%">
<DIV align=center>5:30</DIV></TD>
<TD width="15%">
<DIV align=center>6:42</DIV></TD>
<TD width="15%">
<DIV align=center>33.60</DIV></TD></TR>
<TR bgColor=#ffffcc>
<TD align=left width="15%">Город </TD>
<TD width="15%">Село </TD>
<TD width="10%">
<DIV align=center>ежедн.</DIV></TD>
<TD width="15%">
<DIV align=center>48</DIV></TD>
<TD width="15%">
<DIV align=center>12:20</DIV></TD>
<TD width="15%">
<DIV align=center>13:32</DIV></TD>
<TD width="15%">
<DIV align=center>33.60</DIV></TD></TR>
<TR bgColor=#ffff99>
<TD align=left width="15%">Город </TD>
<TD width="15%">Село </TD>
<TD width="10%">
<DIV align=center>ежедн.</DIV></TD>
<TD width="15%">
<DIV align=center>48</DIV></TD>
<TD width="15%">
<DIV align=center>17:10</DIV></TD>
<TD width="15%">
<DIV align=center>18:22</DIV></TD>
<TD width="15%">
<DIV align=center>33.60</DIV></TD></TR>
<TR bgColor=#ffffcc>
<TD align=left colSpan=7>
<DIV align=center><STRONG>Междугородние суперрейсы</STRONG></DIV></TD></TR>
<TR bgColor=#ffff99>
<TD align=left width="15%">Страна </TD>
<TD width="15%">Страна </TD>
<TD width="10%">
<DIV align=center>ежедн.</DIV></TD>
<TD width="15%">
<DIV align=center>149</DIV></TD>
<TD width="15%">
<DIV align=center>12:55</DIV></TD>
<TD width="15%">
<DIV align=center>16:01</DIV></TD>
<TD width="15%">
<DIV align=center>120.70</DIV></TD></TR>
<TR bgColor=#ffffcc>
<TD align=left width="15%">Вода </TD>
<TD width="15%">Вода </TD>
<TD width="10%">
<DIV align=center>ежедн.</DIV></TD>
<TD width="15%">
<DIV align=center>225</DIV></TD>
<TD width="15%">
<DIV align=center>9:20</DIV></TD>
<TD width="15%">
<DIV align=center>13:40</DIV></TD>
<TD width="15%">
<DIV align=center>181.50</DIV></TD></TR></TBODY></TABLE></BODY></HTML> | |
|
|
|
|
|
|
|
для: Port_Artur1
(04.02.2007 в 22:39)
| | Помогите понять как мне это сделать, как вылавливать объединённые ячейки. | |
|
|
|
|
|
|
|
для: Port_Artur1
(04.02.2007 в 23:03)
| | В смысле "объединенные"? | |
|
|
|
|
|
|
|
для: Port_Artur1
(04.02.2007 в 23:03)
| |
<?
preg_match_all('/<TD colSpan=\d+>(.*?)<\/td>/is', $table, $result);
print_r($result);
|
ну или что-то вроде... | |
|
|
|
|
|
|
|
для: Loki
(05.02.2007 в 14:11)
| | Я понимаю что можно сначалавыбрать все ячейки кроме( TD colSpan) , потом выбрать ячейки с TD colSpan, но как их потом поставить на свои места что - то никак не помогу понять.
Как я буду знать, что что после Пргородных рейсов , их, рейсов идёт например 3, а не 7, и в это место вставить междугородние рейсы Поясните пожалуйста !!!!
Ну я что-то не могу понять. | |
|
|
|
|
|
|
|
для: Port_Artur1
(05.02.2007 в 19:26)
| | Ты объясни конкретно каким образом ты хочешь их объеденить в массив, чтобы каждая строка с colSpan являлась отдельным элементом массива который в свою очередь будет массивом или как | |
|
|
|
|
|
|
|
для: Port_Artur1
(05.02.2007 в 19:26)
| | >и в это место вставить
Очень подмывает порекомендовать в том же духе, но лучше дождусь конкретизации задачи:) | |
|
|
|
|
|
|
|
для: Loki
(05.02.2007 в 21:43)
| | Ладно, ну может я конечно плохо выразился,
В общем нужно извлечь данные из этой таблицы и поместить в свою таблицу, сохранив первоначальную структуру (количество сток, столбцов, их очерёдность). В общем вопрос таков.
То что всю информацию можно извлечь с помощью preg_match_all это понятно.
Но как сохранить первоначальную структуру в новой таблице. | |
|
|
|
|
|
|
|
для: Port_Artur1
(05.02.2007 в 22:15)
| | Ну так извлекай структура то сохраниться, | |
|
|
|
|
|
|
|
для: Port_Artur1
(05.02.2007 в 22:15)
| | ну так preg_match_all сохраняет | |
|
|
|