Guten Tag!
Vielleicht nicht die besten Bedingungen für einen Anfang aber ich möchte lernen mit PureBasic zu prgrammieren.
Meine Interesse liegt in der Analyse von englischen Textsätze.
Textdeteien möchte ich in Sätzen und dann in Satzteilen zerlegen.
Gibt es Mitglieder die sich ähnlich mit PureBasic beschäftigen?
Gibt es Material und Beispielscripts die ich herunterladen kann um meinen Lernprozess vorantreibenzukönnen?
Für Hilfe und Vorschläge bin ich sehr dankbar.
Einen schönen Tag. patforkin.
neuling, nicht Proghrammierer und englisch als Muttersprache
- Hoessi666
- Beiträge: 19
- Registriert: 09.12.2009 11:34
- Computerausstattung: eMachine Notebook G520, Intel 575 @ 2GHz, 2GB Ram,Intel Mobile 4 Series Express
- Wohnort: R´Lyeh
Re: neuling, nicht Proghrammierer und englisch als Mutterspr
Wenn Du einen Text in einem String, also in einer Zeichenkette als Variable, vorliegen hat, kannst Du mit dem Befehl COUNTSTRING die einzelnen Sätze aus dem Gesamttext ziehen: Du suchst erst nach dem gebräuchlichsten, dem Punkt, dann hast Du die Anzahl der Punkte. Anschließend kannst Du über eine FOR...NEXT-Schleife sooft wie Punkte gefunden wurden die einzelnen Sätze per STRINGFIELD rausziehen.patforkin hat geschrieben:Guten Tag!
Vielleicht nicht die besten Bedingungen für einen Anfang aber ich möchte lernen mit PureBasic zu prgrammieren.
Meine Interesse liegt in der Analyse von englischen Textsätze.
Textdeteien möchte ich in Sätzen und dann in Satzteilen zerlegen.
Gibt es Mitglieder die sich ähnlich mit PureBasic beschäftigen?
Gibt es Material und Beispielscripts die ich herunterladen kann um meinen Lernprozess vorantreibenzukönnen?
Für Hilfe und Vorschläge bin ich sehr dankbar.
Einen schönen Tag. patforkin.
Diese Sätze müßtest Du weiter "auftrennen" nach anderen Satzzeichen wie Ausrufungszeichen, Fragezeichen etc.
Alle diese Einzelsätze kannst Du dann wieder mit COUNTSTRING und STRINGFIELD in einzelne Wörter zerlegen (Trennkennzeichen diesmal das Leerzeichen).
Wie Du allerdings dann die einzelnen Wörter analysieren willst...?! Kommt drauf an, was Du untersuchen möchtest. Wenn es wirklich um Sprachwissenschaft geht, müßtest Du wahrscheinlich Deine Einzelwörter über so eine Art Wort-Datenbank abgleichen etc. Da wird´s dann aber recht komplex (z.B. müßte man HAVING als von TO HAVE abstammend erkennen können usw..)
Ich denke gerade nur mal an die Parser der guten alten Textadventures; geht es dir darum? Da gibt es im Netz bestimt eine Menge Seiten zu, denn diese Spielart hat immer noch eine Menge Fans....
Re: neuling, nicht Proghrammierer und englisch als Mutterspr
Ganz einfaches Beispiel: Zerlegen der Sätze in Wörter.
Ich denke als nächstes sollte man aus gespeicherten Wortlisten den Typ der
Wörter bestimmen, so daß man Saetze()\Woerter()\typ setzen kann.
Also ob das Wort ein Verb, Substantiv, bestimmter/unbestimmter Artikel usw. ist.
Code: Alles auswählen
Enumeration
#SatzEnde
#Ausrufezeichen
#Fragezeichen
#Buchstabe
#Nummer
#Space
EndEnumeration
Global Dim Characters.c($FFFF)
Characters('.') = #SatzEnde
Characters('!') = #Ausrufezeichen
Characters('?') = #Fragezeichen
Characters(' ') = #Space
For i = 'A' To 'Z'
Characters(i) = #Buchstabe
Characters(i+32) = #Buchstabe
Next i
Characters('ü') = #Buchstabe
Characters('ö') = #Buchstabe
Characters('ä') = #Buchstabe
Characters('ß') = #Buchstabe
Characters('Ü') = #Buchstabe
Characters('Ö') = #Buchstabe
Characters('Ä') = #Buchstabe
Structure Wort
text$
typ.l
EndStructure
Structure Satz
List Woerter.Wort()
typ.l
EndStructure
Global NewList Saetze.Satz()
Procedure Scan(text$)
AddElement( Saetze() )
*start.Character = @text$
While *start\c
Select Characters(*start\c)
Case #SatzEnde, #Ausrufezeichen, #Fragezeichen
Saetze()\typ = *start\c
AddElement( Saetze() )
*start+SizeOf(Character)
Case #Buchstabe
Wort$ = ""
While Characters(*start\c) = #Buchstabe
Wort$ + Chr(*start\c)
*start+SizeOf(Character)
Wend
AddElement( Saetze()\Woerter() )
Saetze()\Woerter()\text$ = Wort$
Case #Space
*start+SizeOf(Character)
Default
Debug "Unknown input: "+Chr(*start\c)
*start+SizeOf(Character)
EndSelect
Wend
EndProcedure
parse$ = "Das ist ein Satz! Und noch ein Satz. Österreich ist schön?"
Scan(parse$)
i = 1
ForEach Saetze()
Debug "Satz "+Str(i)
Debug "- Anzahl Woerter: " + Str( ListSize( Saetze()\Woerter() ) )
If ListSize( Saetze()\Woerter() )
A$=""
ForEach Saetze()\Woerter()
A$ + Saetze()\Woerter()\text$ + "|"
Next
Debug "- Woerter: "+A$
EndIf
Debug "- Satzzeichen: "+Chr( Saetze()\typ )
i+1
Next
Wörter bestimmen, so daß man Saetze()\Woerter()\typ setzen kann.
Also ob das Wort ein Verb, Substantiv, bestimmter/unbestimmter Artikel usw. ist.
cya,
...Danilo
"Ein Genie besteht zu 10% aus Inspiration und zu 90% aus Transpiration" - Max Planck
...Danilo
"Ein Genie besteht zu 10% aus Inspiration und zu 90% aus Transpiration" - Max Planck
Re: neuling, nicht Proghrammierer und englisch als Mutterspr
Guten Tag und vielen Dank!
Es freut mich sehr wenn einer zuhört und antwortet weil er verstanden hat.
Nach meinem ersten Versuch deine Antwort umzusetzen werde ich vielleicht nit andere Bitten zurückkommen.
Ein schönes Wochenende wüsche ich Dir, patforkin.
Es freut mich sehr wenn einer zuhört und antwortet weil er verstanden hat.
Nach meinem ersten Versuch deine Antwort umzusetzen werde ich vielleicht nit andere Bitten zurückkommen.
Ein schönes Wochenende wüsche ich Dir, patforkin.
Re: neuling, nicht Proghrammierer und englisch als Mutterspr
Guten Tag!
Als nicht Programmierer habe ich versucht zu verstehen, was mir beim Programmieren helfen wurde.
Inzwischen habe ich mir einen einfachen Weg versucht zu definieren.
Das erste E-Buch zu diesem Thema "Übersetzungsrahmen" werde ich in diesem Monat ankündigen. Das Buch wird vorsichtshalber als Copyright angeboten.
Diese Version ist auf der Basis von übersetzten Satzteilen und nicht von einzelnen Wörtern.
Ab Anfang September wird meinen Python Versuch auf derselben Basis aufgesetzt.
In parallel wird mein Wörterbuch auch unter Python realisiert.
Für mich wird es wahrscheinlich am Ende September, bevor ein erster Python programmierte Version herauskommt.
Kurz vor Jahresende wird eine Version auf der Basis von Wortübersetzungen diskussionsfähig.
Neben dem ersten E-Buch über den Übersetzungsrahmen wird es ein E-Buch über das Schreiben von korrektem Englisch geben. Es hat eine ganz interessante Struktur und benutzt eine Wortrollen-Notation.
Wenn ich es darf, wurde ich gerne den Forum-Kontakt pflegen.
Mit freundlichen Grüßen, patforkin.
Als nicht Programmierer habe ich versucht zu verstehen, was mir beim Programmieren helfen wurde.
Inzwischen habe ich mir einen einfachen Weg versucht zu definieren.
Das erste E-Buch zu diesem Thema "Übersetzungsrahmen" werde ich in diesem Monat ankündigen. Das Buch wird vorsichtshalber als Copyright angeboten.
Diese Version ist auf der Basis von übersetzten Satzteilen und nicht von einzelnen Wörtern.
Ab Anfang September wird meinen Python Versuch auf derselben Basis aufgesetzt.
In parallel wird mein Wörterbuch auch unter Python realisiert.
Für mich wird es wahrscheinlich am Ende September, bevor ein erster Python programmierte Version herauskommt.
Kurz vor Jahresende wird eine Version auf der Basis von Wortübersetzungen diskussionsfähig.
Neben dem ersten E-Buch über den Übersetzungsrahmen wird es ein E-Buch über das Schreiben von korrektem Englisch geben. Es hat eine ganz interessante Struktur und benutzt eine Wortrollen-Notation.
Wenn ich es darf, wurde ich gerne den Forum-Kontakt pflegen.
Mit freundlichen Grüßen, patforkin.