Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 23.05.2015, 15:37
Stanei Stanei вне форума
Новичок
 
Регистрация: 21.05.2015
Сообщения: 55
Версия Delphi: Rad Studio 10
Репутация: 10
По умолчанию Парсинг регулярками

Всем привет, не как не могу врубиться в эти регулярки, помогите пожалуйста разобраться.
На странице сайта имеется:
...<img src='/images/icon/race/1.png' alt=''/> Вася<br/>
...
...
...<span class='white'>1000</span>

Как я понял нужно пользоваться этим
Код:
RegExp.Expression := '(.*?)';

Но как записать от куда, до куда парсить?
если записать начало class='white'>, то из-за кавычек ошибка
В первом случае вообще ссылка меняется
Читал по обратные слэши и квадр. скобки, пытаюсь уже целый день и не выходит.

По скобкам ещё: вот надо спарсить только цифры, это ведь [0-9], но в какое место его записать?
Ответить с цитированием
  #2  
Старый 23.05.2015, 15:43
Аватар для Admin
Admin Admin вне форума
Администратор
 
Регистрация: 03.10.2005
Адрес: Россия, Москва
Сообщения: 1,564
Версия Delphi: Delphi 7
Репутация: выкл
По умолчанию

Цитата:
Сообщение от Stanei
Всем привет, не как не могу врубиться в эти регулярки
Онлайн сервис для проверки регулярных выражений https://ru.functions-online.com/preg_match.html
Ответить с цитированием
  #3  
Старый 24.05.2015, 01:24
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Чего вы хотите-то? Значения из HTM документа получать? Можно конечно регулярками, ну а можно и через WebBrowser. Можно вообще ограничится стандартными функциями Copy, Pos и т.д. Все зависит от поставленной задачи.
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #4  
Старый 24.05.2015, 13:11
Stanei Stanei вне форума
Новичок
 
Регистрация: 21.05.2015
Сообщения: 55
Версия Delphi: Rad Studio 10
Репутация: 10
По умолчанию

Отправляю гет, получаю исходник страницы, вот из этого исходника, из строчки
Код:
<img src='/images/icon/race/1.png' alt=''/> Вася<br/>
мне нужно вытащить "Вася"
Ответить с цитированием
  #5  
Старый 24.05.2015, 20:58
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,721
Репутация: 52347
По умолчанию

Вот вам вариант без регулярок:
Код:
Var
  Htm: String;
  SL: TStringList;
begin
 Htm := '<img src=''/images/icon/race/1.png'' alt=''''/> Вася<br/>';
 SL := TStringList.Create;
 SL.Text := WrapText(Htm, #13, ['>','<'], 1);
 ShowMessage(Copy(SL.Strings[1], 1, Length(SL.Strings[1])-1));
 SL.Free;
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием
  #6  
Старый 25.05.2015, 13:12
Stanei Stanei вне форума
Новичок
 
Регистрация: 21.05.2015
Сообщения: 55
Версия Delphi: Rad Studio 10
Репутация: 10
По умолчанию

Спасибо, бро) Всё, что нужно было мне узнать, это то, что одинарные кавычки нужно взять ещё раз в кавычки.
Вот как я сделал с регуляркой по твоему примеру
Код:
cop.Expression := 'alt=''mp''/>(.*?)</span>';
и всё получилось, что хотел
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 18:15.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter