Keine Ahnung wie das mit dem Markieren und Färben geht, aber hier mal ein Ansatz wie du den zu färbenden Text RAUSKOPIERST:
(nicht getestet, müsste aber funktionieren, sieht kompliziert aus, ist es aber nicht,
schau dir einfach mal Pos, PosEx und Copy in er Hilfe an)
Delphi-Quellcode:
// StrUtils in die Uses aufnehmen
var reText, myStrToCopy; String; pPos1, pPos1Ex: String;
begin
reText := RichtEdit1.Text;
pPos1 := Pos('<', reText)+1;
pPos1Ex := PosEx('>', reText, pPos1);
myStrToColor := Copy(reText, pPos1, pPos1Ex-pPos1);
// myStrToColor enthält nun Text von < bis > OHNE < bzw. >
IDA := FindTextAll(RichEdit1, str, []);
// usw..
end;