I am making application which replaces different words of two very similar speaking languages. Number of words by time will probably reach at least 10.000+. There is no big differences in words, it is almost same languages, but however differences exists.
So, I managed to replace words in Memo fast enough, but what I dont know is how to select all replaced words in Memo so it can be seen which words are replaced. Is this possible?
This is how words are replaced:
procedure TForm1.TranslateExecute(Sender: TObject);
var i: integer;
S, OldPattern, NewPattern: string;
begin
S:= Memo1.Lines.Text;
for i := 0 to (StrListV.Count - 1) do {StrListV is created earlier, contains words that should be replaced}
begin
OldPattern:= StrListV.Strings[i];
NewPattern:= StrListV1.Strings[i]; {StrListV1 contains new words}
S:= FastStringReplace(S, OldPattern, NewPattern,[rfReplaceAll]);
end;
Memo1.BeginUpdate;
Memo1.Clear;
Memo1.Lines.Text:= S;
Memo1.EndUpdate;
end;