Registriert seit: 6. Apr 2005
10.109 Beiträge
|
Re: bestimmte Wörter im Memo suchen
27. Jun 2006, 19:15
Hier hast du etwas Code zum Studieren:
Delphi-Quellcode:
uses
StrUtils; // PosEx(), AnsiContainsText()
function After(const s, subStr: String): String;
var
i: Integer;
begin
i := Pos(subStr, s);
if i = 0
then Result := ''
else Result := Copy(s, i + Length(subStr), MaxInt);
end;
function Between(const s, sLeft, sRight: String): String;
var
iLeft, iRight: Integer;
begin
iLeft := Pos(sLeft, s);
if iLeft > 0 then
begin
Inc(iLeft, Length(sLeft));
iRight := PosEx(sRight, s, iLeft);
if iRight > 0
then Result := Copy(s, iLeft, iRight - iLeft)
else Result := ''
end else Result := '';
end;
procedure CustomExtract(sIn, sOut: TStrings; const keyword: String);
var
i: Integer;
s: String;
begin
sOut.Clear;
for i := 0 to Pred(sIn.Count) do
begin
s := Between(sIn[i], '(', ')');
if s <> '' then
begin
if AnsiContainsText(After(sIn[i], ')'), keyword) then
s := s + ' ' + keyword;
sOut.Add(s);
end;
end;
end;
procedure TDemoForm.ButtonClick(Sender: TObject);
begin
CustomExtract(Memo.Lines, ListBox.Items, 'Konto');
end;
Trage bei Gelegenheit mal deine Delphi-Version in dein DP-Profil ein.
Freundliche Grüße vom marabu
|
|
Zitat
|