Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Satz auseinander nehmen!
kulka1 - Mo 05.10.09 16:00
Titel: Satz auseinander nehmen!
Hallo,
ich habe eine frage und zwar:
wie kann ich einen Satz auseinander nehmen?
also das man in einem editfeld ein satz eingibt, und beim klick auf den button sollen die einzelnen wörter untereinander in einem memofeld erscheinen!
wäre nett wenn mir jmd helfen kann, evtl mit code ;)
mfg kulka
elundril - Mo 05.10.09 16:03
nun ja, eigentlich brauchst du ja nur mittels PosEx nach leerzeichen suchen und dann mit copy vom index des letzten leerzeichens bis zum index des aktuellen leerzeichens kopieren, oder? ;)
lg elundril
Xentar - Mo 05.10.09 16:09
Wenn man eh in einem Memo ausgeben möchtes, könnte man auch DelimitedText nehmen.
kulka1 - Mo 05.10.09 18:13
ok, danke, ich werd es mal probieren und werde mich dann wieder zu euch wenden ;)
---
Moderiert von
Narses: Beiträge zusammengefasst---
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| var eingabe, ausgabe: String; i : integer; begin Memo1.Clear; eingabe := edit1.text; i := pos(' ',eingabe);
Memo1.Lines.Add(eingabe);
while (i <> 0) do begin ausgabe := copy(eingabe,1,i);
end; Memo1.Lines.Add(ausgabe); end; |
das geht aber iwie nicht -.-*, ist bestimmt ne menge mist drin, könnt ihr es verbessern =)^^
Xentar - Mo 05.10.09 21:00
Ähm.. ne, das wird so nichts.. z.B. suchst nur EIN Mal, nämlich vor der Schleife, nach dem Leerzeichen.
Schreib am besten an jede Zeile einen Kommentar dran, was da deiner Meinung nach geschieht ;)
Und danach könntest du dir mal überlegen, wie du es selber machen würdest, also wenn du diese Aufgabe z.B. auf einem Blatt Papier lösen müsstest.
Tryer - Di 06.10.09 17:07
Wenn DelimitedText Dir nicht zusagt dann tausch doch einfach "selber" die Leerzeichen gegen Zeilenumbrüche aus.
Delphi-Quelltext
1:
| Memo1.Text := StringReplace(Edit1.Text, #32, #13#10, [rfReplaceAll]); |
kulka1 - Sa 10.10.09 20:40
mhm naja, ich hab es jetzt,
mit pos nach leerzeichen gesucht, und mit copy den satz abgeschnitten
das ganze hab ich in einer while schleife gemacht
danke!
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!