Показать сообщение отдельно
  #20  
Старый 16.11.2012, 04:12
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от vbv
но! Если грузить в программу не весь файл(407 строк начиная с 407й). При полной подгрузке текста(700 строк)
Код:
ShowMessage
выдаёт пустое окошко.
Если бы ты пользовался отладчиком и посмотрел какие значения получают переменные KP и KS, то и сам понял бы почему так происходит. Учись пользоваться отладчиком - незаменимая вещь в непонятных ситуациях.

Вот так будет правильнее и попроще:
Код:
procedure TForm1.Button1Click(Sender: TObject);
const
  cs1: string = '<a href="#nodo" onclick="page.userData.refresh(true);">';
  cs2: string = '</a>';
var
  KP, KS: Integer;
  S, Word: string;
begin
  S := RichEdit1.text;
  KP := 1;
  while True do
  begin
    KP := PosEx(cs1, S, KP);
    if KP = 0 then Break;
    Inc(KP, Length(cs1));

    KS := PosEx(cs2, S, KP);
    if KS = 0 then Break;

    Word := Copy(S, KP, KS - KP);
    ShowMessage(Word);

    KP := KS + Length(cs2);
  end;
end;
Ответить с цитированием