Показать сообщение отдельно

  #9  
Старый 14.07.2007, 06:26
Joker-jar
Постоянный
Регистрация: 11.03.2007
Сообщений: 581
Провел на форуме:
4172659

Репутация: 646


Отправить сообщение для Joker-jar с помощью ICQ
По умолчанию

Писал на скорую руку...

Код:
type
  Tarr = array of string;

procedure MyCopy(Text, Tag1, Tag2: string; var Result: Tarr);
var
  i1,i2: integer;
begin
  while true do
    begin
      i1 := pos(Tag1, Text);
      i2 := pos(Tag2, Text);
      if (i1 = 0) or (i2 = 0) or (i2 <= i1) then
        exit;
      setlength(Result,length(Result) + 1);
      Result[high(Result)] := copy(Text, i1 + length(Tag1), i2 - i1 - length(Tag1));
      Text := copy(Text,i2 + length(Tag2),length(Text) - i2 - length(Tag2));
    end;
end;

procedure TForm1.FormCreate(Sender: TObject);
var
  A: Tarr;
  i: integer;
begin
  MyCopy('Форум <b>Античат</b> - безопасность <b>WEB</b> интерфейсов.', '<b>', '</b>', A);
  for i := 0 to high(A) do
    ShowMessage(A[i]);
end;
P.S. Для таких задачей ИМХО целесообразно уже писать класс

Последний раз редактировалось Joker-jar; 14.07.2007 в 06:28..
 
Ответить с цитированием