Also, für mein Programm benötige ich eine Wortliste mit quasi allen deutschen Wörtern. Eine solche habe ich gefunden, zwar ist es eine Wortliste mit deutschen und englischen Wörtern, das stört mich aber nicht übermäßig. Das Problem: Jedes der Wörter sollte in einer eigenen Zeile stehen. Nur jeweils 1 Wort pro Zeile ohne irgendwelche sonderzeichen oder sonst was, lediglich das Wort. Die Wortliste sieht z.B. so aus:
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17:
| Abbindebeschleuniger {m} [constr.] :: curing accelerator Abbinden {n} (von Beton) [constr.] :: setting Abbindeplatz {m}; Abbindelager {n} [constr.] :: curing area Abbindeverzögerer {m} [constr.] :: curing retardant Abbindewärme {f} [constr.] :: maturing heat Abbindezeit {f} [constr.] :: setting time Abbindezeit {f} (bei Zement) [constr.] :: water curing Abbildung {f} | Abbildungen {pl} :: map; mapping | maps; mappings Abbildung {f} [math.] | Abbildungen {pl} | konforme Abbildung :: mapping; map; transformation | mappings; maps; transformations | conformal map; conformal mapping Abbildungsbreite {f}; Klangkörperausdehnung {f} (Akustik) :: apparently source width; auditory source width Abbildungsfehler {m} | Abbildungsfehler {pl} :: aberration; image defect | aberrations; image defects Abbildtheorie {f} [phil.] :: image theory; picture theory; representation theory Abbildungsmaßstab {m} :: magnification Abbildungsoptik {f} :: imaging optics Abbildungsregister {n} | Abbildungsregister {pl} :: image register | image registers Abbildungsverzeichnis {n} | Abbildungsverzeichnisse {pl} :: table of figures; register of illustrations | tables of figures; registers of illustrations Abbitte {f} | jdm. Abbitte leisten; jdm. Abbitte tun | Abbitte leisten :: apology | to ask sb.'s pardon | to apologize |
Die Wortliste (6 mb groß und sehr viele Wörter) ist nebenbei unter
dict.tu-chemnitz.de/doc/faq.de.html downloadbar.
Jetzt würde ich gerne ein Delphi Programm schreiben welches mir daraus eine vernünftige Wortliste macht, d.h. die ganzen speziellen sachen wie "{n} {m} {f} ; [constr.] :: |" usw. weg macht und dann, falls in einer Zeile 2 Wörter sind diese so umschreibt das die Wörter auf je 1 Wort pro Zeile verteilt werden.
Theoretisch stelle ich es mir so vor:
Delphi geht eine Zeile der Liste durch. Dabei bearbeitet es buchstabe für buchstabe, kommt ein bestimmtes Zeichen wie "{ } ; { : |" vor, wird dieses gelöscht, ebenso bei bestimmten Zeichenketten wie "{f} {phil.] [math.]" welche auch verschwinden sollten.
Nach meiner Überlegung sollte es auch genügen, nicht nach Zeichenketten zu schauen sondern nur die Sonderzeichen auszufiltern und nach jedem Leerzeichen das nächste Wort in eine neue Zeile zu schreiben. Wenn dann z.B. von "{phil.]" nach aussortieren noch phil übrig bleibt (und das Wort will ich ja nicht haben) kann ich immer noch einen extra-Part programmieren welcher nachprüft welche Wörter häufig vorkommen und dann diese dann löscht.
Falls er auf ein Leerzeichen stößt (da 2 Wörter ja immer durch ein Leerzeichen getrennt werden) weis er, dass nun ein neues Wort beginnt und er demnach eine neue Zeile mit dem Wort ab der Leerzeile einfügen soll.
So in etwa stelle ich es mir vor

Ich weis allerdings nicht, wie ich buchstabe für buchstabe scanne bzw. nach bestimmten zeichenketten suchen lasse. Im Prinzip will ich erstmal alles in ein Memo laden und dann von da aus das filtern anfangen.
Sind meine Überlegungen bis jetzt richtig?
Danke!
Moderiert von
Narses: Titel geändert: es geht ja nicht um´s Sortieren, sondern um eine Modifikation des Listeninhaltes! 