
12.04.2013, 12:40
|
 |
Гуру
|
|
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,723
Репутация: 52347
|
|
Цитата:
Сообщение от M.A.D.M.A.N.
Используй регэкспы (с).
Я задолбался уже писать эту фразу.
|
Я понимаю, что это хорошая вещь, но не панацея от всего.
Вот вариант без Pos и регулярок, который все это дело обрабатывает и помещает в таблицу. Есть только одна проблемка. В ваших данных в строка 11-14 исчез один из параметров. Это видимо надо дополнительно обрабатывать.
Код:
procedure TForm8.Button1Click(Sender: TObject);
Var
S: String;
Row,Col: Integer;
SL: TStringList;
begin
StringGrid1.RowCount := Memo1.Lines.Count + 1;
for Row := 0 to Memo1.Lines.Count - 1
do begin
S := Memo1.Lines.Strings[Row];
S := StringReplace(S, 'Message to send :', 'Message_to_send:', [rfReplaceAll]);
S := StringReplace(S, ')', ') ', [rfReplaceAll]);
S := StringReplace(S, ' )', ')', [rfReplaceAll]);
S := StringReplace(S, 'Not all valves fed', 'Not_all_valves_fed', [rfReplaceAll]);
S := StringReplace(S, 'No room in', 'No_room_in', [rfReplaceAll]);
SL := TStringList.Create;
SL.DelimitedText := S;
StringGrid1.ColCount := SL.Count + 1;
for Col := 0 to SL.Count - 1
do StringGrid1.Cells[Col+1,Row+1] := SL.Strings[Col];
SL.Free;
end;
end;
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
|