Ich blick bei dir auch nicht durch
Warum so kompliziert:
Delphi-Quellcode:
function getSelectedWord(
const txt:
string; start: integer):
string;
const
blank = ['
', #10, #13];
// <- kann erweitert werden, z.B. Punkte
var
count: integer;
begin
if length(txt) > 0
then
begin
if start < 1
then start := 1;
count := 0;
while ((start-1 >= 1)
and (
not (txt[start-1]
in blank)))
do dec(start);
while ((start+count <= length(txt))
and ((
not (txt[start+count]
in blank))))
do inc(count);
result := copy(txt, start, count);
end else result := '
';
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Button1.Caption := '
"'+getSelectedWord(memo1.Text, memo1.SelStart)+'
"';
end;
Wichtig: Wenn dieser Code verwendet wird muss
{$B-} eingestellt sein (ist Standard, unter
$B in der Hilfe nachschauen).
MfG,
Bug
@roter Kasten: ich poste meine Lösung trotzdem mal...
EDIT:
Standart