![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| koven |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 25 Регистрация: 21.7.2006 Репутация: нет Всего: нет |
Доброго времени суток!
Подскажите, как можно извлечь все ссылки из интернет страницы (пусть она будет сохранена на винте). Т.е. есть html-код и как из него "повыдергивать" все ссылки и сохранить их в текстовый файл (или Memo - все равно). Заранее всем спасибо!! |
|||
|
||||
| volvo877 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2073 Регистрация: 15.11.2004 Репутация: 14 Всего: 116 |
koven, вот тут я приводил код для удаления текста между определенными тегами:
http://forum.vingrad.ru/index.php?showtopi...st&p=787179 Тебе понадобится только перед удалением записать удаляемую подстроку в Memo или файл (начальный тег выбери: '<a href', а конечный: '/a>') |
|||
|
||||
| BUGOR |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 325 Регистрация: 12.3.2006 Репутация: 5 Всего: 16 |
Юзай регулярные выражения и MatchCollection, более быстрого и элегантного решения тут не найти.
|
|||
|
||||
| murod |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 113 Регистрация: 17.9.2005 Где: Uzbekistan/Tashke nt Репутация: 1 Всего: 4 |
Что это такое MatchCollection? Можно по подробнее?
--------------------
Люди всего мира берегите природу! |
|||
|
||||
| volvo877 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2073 Регистрация: 15.11.2004 Репутация: 14 Всего: 116 |
||||
|
||||
| BUGOR |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 325 Регистрация: 12.3.2006 Репутация: 5 Всего: 16 |
volvo877, ты о чём дружок? В какую каждую дырку? Чем это регулярные выражения хуже твоего метода? Может тем, что код занимает на две строки больше? Но зато по скорости превосходят и никаких лишних объектов на форме(ибо этот компонент прибавляет к программе 60 Кб весу против 4 Кб от TRegExpr). Я сказал то, что считаю я нужным и в своей программе я бы использовал MatchCollection, поэтому ненужно лишних движений. И кто бы, что не говорил в парсинге сложных структурированных данных(html, xml) лучшим признанным решением является использование регулряных выражений.
Это сообщение отредактировал(а) BUGOR - 22.7.2006, 19:14 |
|||
|
||||
| Palladin |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 932 Регистрация: 15.5.2007 Где: Беларусь г.Гомель Репутация: 3 Всего: 17 |
Не я бы просто просматривал бы Html сраничку(код всмысле) и удалял бы всё кроме того что занесено в теги <a href></a>, а потом всё что осталось выводил бы в мемо но уже без тегов, может и не проффесионально, но я начинающий
-------------------- Глуп тот кто полагается на истину авторитета, а не на авторитет истины [color=red]KAV&KIS==Evil[/color] |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Да регулярные выражения имеют, конечно, свои ограниченя. Можно такое составть, что "загнется алгоритм" под тяжестью рекурсий Это сообщение отредактировал(а) alexeis1 - 22.7.2006, 20:24 -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| nerezus |
|
|||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: нет Всего: 43 |
хотя сам я перл ненавижу. Тут просто все линки выдираются с абсолюьтными путями. Но регекспы то универсальны ;) Это сообщение отредактировал(а) nerezus - 23.7.2006, 08:43 |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |