Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Сети > Регулярное выражение


Автор: ishimcity 28.9.2009, 15:54
Ребята подскажите как получить с сайта вот такие данные?
Код


 <tr class="odd"><td>Приём</td><td>22.09.2009 15:23</td><td>&nbsp;</td><td>Соединенные Штаты Америки </td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td> </tr>
 <tr class="even"><td>Экспорт</td><td>23.09.2009 12:47</td><td>&nbsp;</td><td>Соединенные Штаты Америки </td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td> </tr>
 <tr class="odd"><td>Импорт</td><td>28.09.2009 09:19</td><td>104010</td><td>Москва </td><td>&nbsp;</td><td>0.5</td><td>&nbsp;</td><td>&nbsp;</td><td>627000</td><td>Сибирь</td> </tr>



Примерно должно получиться так что в столбце

Операция  |    Дата  |   Индекс  |   Адрес |

Прием            хххх        ххххх         ххххх
Экспорт                  и т д
Импорт       

Как мне получить данные с сайта? Спасибо
 

Автор: patap 28.9.2009, 16:14
Код

(Импорт|Экспорт|Приём).*?(\d{2}.\d{2}.\d{4} \d{2}:\d{2}).*?<td>(&nbsp;|\d+).*?<td>(.*?)</td>


и флаг для юникода добавить наверно нужно будет

Автор: Romikgy 28.9.2009, 21:04
мож лучше заюзать html парсер ?

Автор: ishimcity 29.9.2009, 08:11
Romikgy Дружище, расскажи подробней,что у тебя за идейка?

Автор: Romikgy 29.9.2009, 20:34
ishimcity, код котроый приведен является таблицей хтмл
берем парсер хтмл и находим нужную таблицу... и вытягиваем данные 
http://forum.vingrad.ru/act-Search/CODE/show/searchid-9a73d475b77c875729413d705975382d/search_in-posts/result_type/topics/flag/search/highlite/%25D0%25BF%25D0%25B0%25D1%2580%25D1%2581%25D0%25B5%25D1%2580+html/index.html
http://www.google.com.ua/search?q=%D0%BF%D0%B0%D1%80%D1%81%D0%B5%D1%80+html+delphi+&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)