Модераторы: Poseidon, Snowy, bems, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Поиск текста, между тэгами 
V
    Опции темы
Sunr1se
Дата 10.7.2006, 15:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 193
Регистрация: 1.5.2006

Репутация: 6
Всего: 13



Тогда сделай так:
В цикле перебирай строчки, записывая в какую-то переменную номер строки, если в ней есть тег <tr>(ну или какой-то другой). Как только цикл закончится, воспользуйся функцией Mechanic'а, передав в нее эту самую строчку. 
--------------------
IRC-канал Винграда 
PM MAIL ICQ   Вверх
Rondo
Дата 10.7.2006, 16:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 154
Регистрация: 24.2.2006
Где: там..

Репутация: нет
Всего: нет



Вообщем перелопатил я этот текст и получилось как и ожидал эти самые 2 числа
Код

 14 156 608 210 125 741


Толкько как разлечить что это 2 числа а не 6 числел, и отправить их на разные строки... И числа то могут быть разные  smile  
--------------------
Начинающий кодер  
PM MAIL ICQ   Вверх
Sunr1se
Дата 10.7.2006, 16:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 193
Регистрация: 1.5.2006

Репутация: 6
Всего: 13



А ты не мог бы показать, каким образом лопатил текст? smile 
--------------------
IRC-канал Винграда 
PM MAIL ICQ   Вверх
BUGOR
Дата 10.7.2006, 16:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 325
Регистрация: 12.3.2006

Репутация: 5
Всего: 16



В данном случае однозначно рулят регулярки. Только в твоём примере первый и последний найденные теги какие? Я так понял надо найти всё, что в пределах тегов td и чтобы это были цифры, если так, то выражение будет выглядеть следующим образом:
(?!(<td.*>(<b>)?)) [0-9 ]+(?=((</b>)?</td>))

Из твоего примера моё выражение выдирает следующее:
 3 897
 51 212
 1 796
 802
 23 917
 530 030
 14 156 608
 210 125 741 


--------------------
Живу недоумевая, всё время хочу понять...
http://hunger.ru 
PM MAIL WWW ICQ   Вверх
Rondo
Дата 10.7.2006, 16:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 154
Регистрация: 24.2.2006
Где: там..

Репутация: нет
Всего: нет



Еще Poseidon довал на днях smile
Код

function GetTextInHTML(HTML, TegStart, TegFin: string): string;//Поиск мужду тэгами
var
  p0, p1: integer;
  stop: boolean;
  Text, iHTML: string;
begin
  Result:= '';
  Text:= HTML;
  repeat
    p0:= pos(TegStart, Text) + Length(TegStart);
    p1:= pos(TegFin, Text);
    Result:= Result + copy(Text, p0, p1-p0);
    iHTML:= copy(Text, p1+Length(TegFin), Length(Text)-(p1+Length(TegFin)));
    Stop:= (iHTML = Text);
    Text:= iHTML;
  until stop;
end;
  

Это сообщение отредактировал(а) Rondo - 10.7.2006, 16:21
--------------------
Начинающий кодер  
PM MAIL ICQ   Вверх
BUGOR
Дата 10.7.2006, 16:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 325
Регистрация: 12.3.2006

Репутация: 5
Всего: 16



А, ну и если будешь работать с MatchCollection, то просто бери два последних элемента массива, если же с массивами работать не хочешь, то нужно дорабатывать выражение, чтобы оно выбирало текст между двумя последними тегами td, в принципе это несложно, если надо скажи, попробую составить.

Добавлено @ 16:30 
Rondo, объясни мне зачем писать огромные и тормозные функции, когда это всё красиво и элегантно умещается в одно регулярное выражение? 


--------------------
Живу недоумевая, всё время хочу понять...
http://hunger.ru 
PM MAIL WWW ICQ   Вверх
Rondo
Дата 10.7.2006, 16:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 154
Регистрация: 24.2.2006
Где: там..

Репутация: нет
Всего: нет



Неумею я пока ими пользоватся smile Начинающий кодер. А где про них можно хелп найти или самоучитель? 
--------------------
Начинающий кодер  
PM MAIL ICQ   Вверх
Sunr1se
Дата 10.7.2006, 16:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 193
Регистрация: 1.5.2006

Репутация: 6
Всего: 13



Так ты передавай в функцию строки по отдельности. тогда будешь получать строку, в которой одно число. Удали из строки пробелы и приведи его к типу integer. 

http://anso.da.ru/ - здесь есть и компонент необходимый, и мануальчик небольшой по регулярным выражениямsmile  

Это сообщение отредактировал(а) Sunr1se - 10.7.2006, 16:44
--------------------
IRC-канал Винграда 
PM MAIL ICQ   Вверх
BUGOR
Дата 10.7.2006, 16:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 325
Регистрация: 12.3.2006

Репутация: 5
Всего: 16



Rondo, Уже оффтопить начали, ну думаю модеры нас простят. Я учил регулярные выражения по книге:
Фридл Дж. Регулярные выражения (2-е изд.), Питер 2003, 464 с., ISBN 5-272-00331-4
Есть в сети. Прочёл всего-лишь порядка 100 страниц, но при этом спокойно могу составлять довольно сложные регулярки. 


--------------------
Живу недоумевая, всё время хочу понять...
http://hunger.ru 
PM MAIL WWW ICQ   Вверх
Лысенак
Дата 10.7.2006, 18:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 8.7.2006

Репутация: нет
Всего: нет



Код

/<b>(.+?)</b>/g

http://www.regularexpressions.info/ 

Это сообщение отредактировал(а) Лысенак - 10.7.2006, 18:42
PM   Вверх
Rondo
Дата 10.7.2006, 18:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 154
Регистрация: 24.2.2006
Где: там..

Репутация: нет
Всего: нет



Нашел эту книгу, и правда легко )) http://foror.name/upload/regexp.zip 
--------------------
Начинающий кодер  
PM MAIL ICQ   Вверх
Eva_Adamova
Дата 3.5.2007, 03:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 26.3.2007
Где: Петропавловск-Кам чатский

Репутация: нет
Всего: нет



Пусть я отвечаю поздно, через полгода, но всё равно хочется сказать спасибо. У меня такая же проблемы была, с разбором таблиц в ХТМЛе, сейчас всё стало более менее ясно!

Добавлено через 3 минуты и 18 секунд
Вышеприведённая ссылка на книгу не работает, вот другая  - http://natahaus.ifolder.ru/551395
PM MAIL ICQ   Вверх
Yanis
Дата 3.5.2007, 06:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

Репутация: 72
Всего: 111



Приятно осозновать, что есть люди которые пользуются поиском.
Eva_Adamova,  smile 


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
AlManZ
Дата 10.5.2007, 21:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 4.1.2007

Репутация: нет
Всего: нет



Ну чтоб не создавать новый топик... Книга - да, отличная! А вот теперь еще бы где-нить взять эту библиотеку TRegExpr... ссылки, которые нашел уже не работают :(. Можно и на мыло, буду благодарен.
PM MAIL   Вверх
iddqd
Дата 10.5.2007, 22:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 491
Регистрация: 16.11.2005

Репутация: 0
Всего: 2



Да прибудем с тобой гугл.
http://www.regexpstudio.com/


--------------------
PM MAIL   Вверх
Страницы: (3) Все 1 [2] 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1322 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.