Irgendwie hab' ich da was durcheinander gebracht.. aber jetzt stimmts.
Delphi-Quellcode:
var
Line, Word: string;
i, t: integer;
Delimiters: set of Char;
begin
Delimiters := [' ', ';', ',', '.', '-']; //Viel mehr Möglichkeiten..
Line := Richedit1.Lines[Richedit1.CaretPos.Y];
for i := Richedit1.CaretPos.X downto 1 do
if Line[i] in Delimiters then Break;
for t := Richedit1.CaretPos.X to Length(Line) do
if Line[t] in Delimiters then Break;
Word := Copy(Line, i, t-i);
end;