Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.03.2015, 10:56   #1
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию RegExpr, парсинг данных до тех пор пока есть что парсить

Вобщем нужно повторять цикл где (while Ends do) до тех пор пока есть данные для парсинга, если данных нет - выполняем Synchronize(EndWork) ;- конец работы, но цикл while Ends do по-моему составлен не правильно но если делаю просто while RegExp.Exec (мол пока есть значения) - эррорит, оно-то и понятно...

Код:
    while i<Form1.sRichEdit1.Lines.Count do
    begin
      n:=0;
      // запрос, в этом запросе нет параметра с количеством значений которое нужно парсить поэтому нужно 
      //автоматически проверять, если есть данные - повторяем цикл while Ends do, если данных нет - завершаем работу

        while Ends do  // Ends:Boolean, тут надо шаманить
        begin
            // запрос

            if RegExp.Exec('запрос') then
            repeat

               // наполнение RichEdit2, тут все норм            

            until not RegExp.ExecNext;

          n:=n+340;
        end;

      inc(i);
    end;

Последний раз редактировалось FleXik; 16.03.2015 в 11:07.
FleXik вне форума Ответить с цитированием
Старый 16.03.2015, 13:36   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

http://www.programmersforum.ru/showp...5&postcount=13
убираем то что связано с i вставляем код заполнения и готово.
З.Ы. или же просто смотрим как "шаманить" с ends: boolean (existvalue)
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 16.03.2015 в 13:39.
evg_m вне форума Ответить с цитированием
Старый 16.03.2015, 13:41   #3
FleXik
Форумчанин
 
Регистрация: 01.11.2012
Сообщений: 770
По умолчанию

evg_m, да-да я помню, но помню мне еще и модератор (не помню ника) тоже давал код, он был 100% рабочий но не могу найти блин

это "Человек_Борща" или "Stilet" или "Serge_Bliznykov"

а existvalue какой тип переменной?

короче проблему решил, помню же что кто-то помогал) это был Serge_Bliznykov за что ему большое спасибо

вот ссылка на решение проблемы: http://www.programmersforum.ru/showthread.php?t=261229

надо было всего лишь сделать так:

Код:
  until not RegExp.ExecNext
        else 
            Break;
все работает идеально =)

Последний раз редактировалось Stilet; 16.03.2015 в 17:11.
FleXik вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как программно нажимать button до тех пор пока label не изменится Roman123654789 Общие вопросы Delphi 20 21.05.2014 18:27
Считать до тех пор, пока подкоренное выражение больше 0. Определить k - количество вычисленных F. Циклы. KatruKot Паскаль, Turbo Pascal, PascalABC.NET 2 14.06.2011 13:17
Элементы заданной матрицы A(N, N) переписывайте построчно в одномерный массив до тех пор, пока не встрети Bleize Помощь студентам 3 27.12.2010 23:13
Ваше сообщение не будет отображено до тех пор, пока модератор не проверит его. GoodDA О форуме и сайтах клуба 5 24.08.2010 01:24
Машина случайным образом генерирует натуральные числа в промежутке [0, 1, 2, … 10] до тех пор, пока не 0 JustinTI Помощь студентам 3 21.12.2008 14:31