Mam tekst w memo1 (delphi)
Ala ma kota.
Jak wyszukać słowo "ma" i skopiować do memo2?
Mam tekst w memo1 (delphi)
Ala ma kota.
Jak wyszukać słowo "ma" i skopiować do memo2?
procedure TForm1.FDFind(Sender: TObject);
var
sText: string;
StartFrom, FoundPos: integer;
tekst : string;
begin
if PreviousFoundPos = 0 then
FD.Options := FD.Options - [frFindNext];
if not (frFindNext in FD.Options) then begin
sText := RE.Text;
StartFrom := 1;
end
else begin
StartFrom := PreviousFoundPos + Length(FD.Findtext);
sText := Copy(RE.Text, StartFrom, Length(RE.Text) - StartFrom + 1);
end;
if frMatchCase in FD.Options then
FoundPos := Pos(FD.FindText, sText)
else
FoundPos := Pos(UpperCase(FD.FindText), UpperCase(sText));
if FoundPos > 0 then begin
PreviousFoundPos := FoundPos + StartFrom - 1;
RE.SelStart := PreviousFoundPos - 1;
RE.SelLength := Length(FD.FindText);
RE.SetFocus;
tekst:=FD.FindText;
memo2.Lines.Add(tekst);
end
else
ShowMessage('Nie Odnaleziono "' + FD.FindText + '"');
end;
Eloszek mnie ubiegł, ale jest prostszy sposób, jeżeli chodzi tylko o skopiowanie konkretnego słowa i nie trzeba do tego "zatrudniać" komponentu TFindDiaog.
const
FindWhat = 'ma';
var
S : string;
X : integer;
begin
S := Memo1.Text;
X := Pos(FindWhat, S);
if X > 0 then
Memo2.Text := Copy(S, X, Length(FindWhat));
end;
I szczerze polecam zapoznanie się również z jakimiś kursami Delphi czy kompendium na tej stronie, by nie pytać o banalne podstawy.