Gut, ich skizziere mal, wie ich das machen würde:
Text aus Datei in String
List & Richedit laden: Hast du offenbar schon.
StringList mit Wörtern laden.
Delphi-Quellcode:
uses strutils;
var
i, position: integer;
Wörter: TStringlist;
text: String;
Richedit.Lines.Beginupdate();
for i = 0 to Wörter.Count do
begin
position = pos(Wörter[i], text);
while(position != 0)
begin
// Highlighting mit positioin und length(wörter[i])
position = posex(Wörter[i], text, position);
end;
end;
Richedit.Lines.EndUpdate();
Der Cde geht also nicht den Text durch, um zu ürüfen, ob da wörter sind, sondern geht die wörter durch und prüft ob sie im Text sind.
Wg. Case-Sensitiveness: da gibt es evtl. noch andere pos-Funktionen, bei denen man das einstellen kann