Parser für TextAnalyse ... KI-Erweiterung
Gut das wir jetzt Bescheid wissen.
Wer macht mit eine PB-Butze zu basteln?

Wer macht mit eine PB-Butze zu basteln?



Kinder an die Macht http://scratch.mit.edu/
Nee du, das war jetzt ganz daneben 
Mein Ziel ist ja, für alle, die sich keine echte Freundin leisten können, eine Engine zu entwickeln, die dann in eine RealDoil oder einen weiblichen Asimo embeded wird

Mein Ziel ist ja, für alle, die sich keine echte Freundin leisten können, eine Engine zu entwickeln, die dann in eine RealDoil oder einen weiblichen Asimo embeded wird

Kinder an die Macht http://scratch.mit.edu/
Der Dativ ist dem Genitiv sein Tod.
>> übrigens ein tolles Buch ... Hab die HörCDs
Wie schon auf der ersten Seite des Themas erwähnt:
http://www.schyren-gymnasium.de/gramm/index.html
Die Seite ist wirklich gut, einfach mal reinschauen und sich mitreißen lassen.
Es geht nicht darum, besser Sprechen zu können als vorher oder nachts aufzuwachen und alle Präpositionen aufsagen zu können, die es nur in Verbindung mit dem Genitiv gibt ...
Viel mehr darum, dass, woran wir uns täglich halten ... einige mehr, andere weniger ... in einer für den Computer verständliche Form zubringen und auch etwas damit zu assoziieren.
Ich hab schon CODE reingestellt. Traut euch ruhig.
>> Einen hab ich noch:
Ohne du kann ich nicht bin.
Es dürfte nicht all zu schwer sein, dass der Computer daraus den richtigen Satz bildet. Ob er dann auch wirklich weiß, was er bedeutet, ist eine andere Sache.
Wem fällt was einfaches ein, was möglichst ohne große Datenbank auskommt oder sich selbst eine generiert.
SQL und QuellCode bevorzugt

>> übrigens ein tolles Buch ... Hab die HörCDs

Wie schon auf der ersten Seite des Themas erwähnt:
http://www.schyren-gymnasium.de/gramm/index.html
Die Seite ist wirklich gut, einfach mal reinschauen und sich mitreißen lassen.
Es geht nicht darum, besser Sprechen zu können als vorher oder nachts aufzuwachen und alle Präpositionen aufsagen zu können, die es nur in Verbindung mit dem Genitiv gibt ...
Viel mehr darum, dass, woran wir uns täglich halten ... einige mehr, andere weniger ... in einer für den Computer verständliche Form zubringen und auch etwas damit zu assoziieren.
Ich hab schon CODE reingestellt. Traut euch ruhig.
>> Einen hab ich noch:
Ohne du kann ich nicht bin.
Es dürfte nicht all zu schwer sein, dass der Computer daraus den richtigen Satz bildet. Ob er dann auch wirklich weiß, was er bedeutet, ist eine andere Sache.
Wem fällt was einfaches ein, was möglichst ohne große Datenbank auskommt oder sich selbst eine generiert.
SQL und QuellCode bevorzugt






Zuletzt geändert von Xaby am 18.05.2006 13:46, insgesamt 1-mal geändert.
Kinder an die Macht http://scratch.mit.edu/
Auf der anderen Seite war ein Schusseligkeitsfehler.
; Folgenden 3 Zeilen sollen aus Umgangssprache Hochdeutsch mach'n
If Mid(Eingabe,Len(Eingabe)-1,1)<>"e"
Eingabe=Left(Eingabe,Len(Eingabe)-1)+"en"
EndIf
Bei der ganzen Hektik hatte ich es an die falsche Position gestellt.
Dadurch wäre bei der Eingabe: "sein" nichts sinnvolles herausgekommen
Das Programm kann noch nix, dass aber dafür ganz gut
; Folgenden 3 Zeilen sollen aus Umgangssprache Hochdeutsch mach'n
If Mid(Eingabe,Len(Eingabe)-1,1)<>"e"
Eingabe=Left(Eingabe,Len(Eingabe)-1)+"en"
EndIf
Bei der ganzen Hektik hatte ich es an die falsche Position gestellt.
Dadurch wäre bei der Eingabe: "sein" nichts sinnvolles herausgekommen
Code: Alles auswählen
;{- Information :: Für PB V4.x und PB 3.94
; Autor : Folker Linstedt
; Inhalt: Wort-Analyse
; Beginn: 17.05.2006
; Stand : 17.05.2006
;}/
;{- Deklaration
Eingabe.s ; Text-Eingabe
Ausnahme.b; Boolean für Ausnahmen
; Modale Verben, können mit Zusatzwerben benutzt werden:
; Ausnahmen: Verben mit Umlauten: dürfen, können, müssen
; weitere : sollen, wollen
; Andere Ausnahmen: Laufen, saufen, ... (Die dummen Umlaute!) Aber ebm nicht kaufen
; Ausnahmen ohne Regel: sein, haben
Dim Worte.s(8) ; Stamm, Ich, Du, Er, Sie, Es, Wir, Ihr, Sie
Dim PersPron.s(8); PersonalPronomen
PersPron(0)="Stamm"
PersPron(1)="ich"
PersPron(2)="du "
PersPron(3)="er "
PersPron(4)="sie"
PersPron(5)="es "
PersPron(6)="wir"
PersPron(7)="ihr"
PersPron(8)="sie"
;}/
OpenConsole()
PrintN(":: WortDingli Simple V.0.1, (c) 2006 by Folker Linstedt")
PrintN("::")
PrintN(":: Bitte geben Sie ein Tu(n)-Wort in seiner Grundform in der Gegenwartsform ... ::")
PrintN(":: ... bzw. ein Verb im Infinitiv im PrAesens ein ::")
PrintN("")
Print("Eingabe: "): Eingabe=Input() ; Keine weitere Überprüfung
;PrintN(""); für PB 3.94 notwendig, da Input nicht allein in die Nächste Zeile springt
PrintN("")
Ausnahme=0; Ausnahmen müssten in einer Datenbank aufgenommen werden
If Eingabe="sein"
Worte(1)="bin"
Worte(2)="bist"
Worte(3)="ist"
Worte(6)="sind"
Worte(7)="seit"
Ausnahme=1
EndIf
; Folgenden 3 Zeilen sollen aus Umgangssprache Hochdeutsch mach'n
If Mid(Eingabe,Len(Eingabe)-1,1)<>"e"
Eingabe=Left(Eingabe,Len(Eingabe)-1)+"en"
EndIf
If Eingabe="haben"
Worte(1)="habe"
Worte(2)="hast"; Statt "habst"
Worte(3)="hat"; Statt "habt"
Worte(6)="haben"
Worte(7)="habt"
Ausnahme=1
EndIf
If Eingabe="sollen" ; Ausnahmen mit Umlauten sind irgendwie umständlicher in der Console
Worte(0)=Left(Eingabe,Len(Eingabe)-2); Stamm für Mehrzahl
Worte(1)="soll"; Stamm ... bei dürfen -> darf, bei müssen -> muss, bei wollen -> will
Worte(2)=Worte(1)+"st"
; -> bei musst fällt ein "s" weg, weil drei auf einander folgen, und es kein
; zusammengesetztes Substantiv ist wie bei Schlosssickergrube, Schifffahrt
Worte(3)=Worte(1); Wie "ich"
Worte(6)=Eingabe
Worte(7)=Worte(0)+"t" ; diesmal nicht wie "Er"
Ausnahme=1
EndIf
If Ausnahme=0
Worte(0)=Left(Eingabe,Len(Eingabe)-2); Macht aus "gehen" -> "geh"
Worte(1)=Worte(0)+"e"
Worte(2)=Worte(0)+"st"
Worte(3)=Worte(0)+"t"
Worte(6)=Worte(0)+"en"
Worte(7)=Worte(0)+"t" ; meist wie er, aber ebm nicht immer >> Ausnahmen
EndIf
Worte(4)=Worte(3) ; "Sie" ist wie "Er"
Worte(5)=Worte(3) ; "Es" ist wie "Er"
Worte(8)=Worte(6) ; "Sie" ist wie "wir"
For i=1 To 8 ; Auch wenn Wir/Sie und Er/Sie/Es gleich sind, ist es für die Ausgabe einfacher
PrintN(" "+PersPron(i)+" "+Worte(i))
Next
Input() ; Warte bis Enter
Kinder an die Macht http://scratch.mit.edu/
Noch mehr CODE
Dieser trennt einen Satz in Worte. Es überprüft auch schon ansatzweise, ob es sich überhaupt um ein Wort handelt.
Ich denke, es ist möglich einen Filter zu machen, der z.B. folgendes schon kann:
Der Mann geht langsam weg.
> Mann ist groß geschrieben, also ist das Subjekt bis dorthin.
- Der Mann -
Nach dem Subjekt muss sofort das Prädikat kommen.
>> also "geht"
Der Rest ist dann irgendein Objekt oder sowas.
Subjekt, Prädikat, Objekt
>> folgendes geht nicht
Langsam geht der Mann weg.
-> hier müsste man wohl ein Wörterbuch auf "geht" ansetzen.
Und auch auf "langsam" und "weg"
Auf Mann nicht, das kann nämlich auch Frank sein. Und den kennen wir ja noch nicht
Code: Alles auswählen
;{- Information :: Für PB V4.x und PB 3.94
; Autor : Folker Linstedt
; Inhalt: Wort-Analyse
; Beginn: 17.05.2006
; Stand : 18.05.2006
;}/
;{- Deklaration
Eingabe.s ; Text-Eingabe
Ausnahme.b; Boolean für Ausnahmen
; Modale Verben, können mit Zusatzwerben benutzt werden:
; Ausnahmen: Verben mit Umlauten: dürfen, können, müssen
; weitere : sollen, wollen
; Andere Ausnahmen: Laufen, saufen, ... (Die dummen Umlaute!) Aber ebm nicht kaufen
; Ausnahmen ohne Regel: sein, haben
; Das Global muss bei PB 3.94 wieder entfernt werden!!!
Global Dim Worte.s(8) ; Stamm, Ich, Du, Er, Sie, Es, Wir, Ihr, Sie
Global Dim PersPron.s(8); PersonalPronomen
Global Dim Vokale.s(4); Dim Vokale.c(4) wegen der PB 3.94 Kompatibilität, aber ohne Global
; Vokale + Umls
Global Dim Umls.s(2); Umlaute von Vokalen getrennt, weil sie unter der Console anders erkannt werden
PersPron(0)="Stamm"
PersPron(1)="ich"
PersPron(2)="du "
PersPron(3)="er "
PersPron(4)="sie"
PersPron(5)="es "
PersPron(6)="wir"
PersPron(7)="ihr"
PersPron(8)="sie"
Vokale(0)="a" ; Reihenfolge normalerweise: a, e, i, o, u
Vokale(3)="e"
Vokale(4)="i" ; Wegen den Umls, sind jedoch die ersten drei a, o, u
Vokale(1)="o"
Vokale(2)="u"
Umls(0)="ä" ; -> hier müssen die richtigen Codes für die Umlaute eingesetzt werden
Umls(2)="ö"
Umls(2)="ü"; Später müsste es vielleicht noch
; "au"'s, "äu"'s, "eu"'s, "ai"'s, und "ei"'s geben
;>> Enge Verknüpfung mit der Sprachausgabe.
;>> WörterBuch müsste Aussprache, Sinn und visuelle Darstellung
;>> des Wortes, der Gruppe speichern. Sinn -> mit anderen Worten verknüpfen
;}/
Procedure.b VokaKuck(s.s); Schaut, ob ein Vokal oder ein Uml in der Zeichenkette vorkommt
Dings.b=0
For o=0 To 4
If FindString(s,Vokale(o),1)<>0
Dings+1
EndIf
Next
For o=0 To 2
If FindString(s,Umls(o),1)<>0
Dings+1 ; Urml aus dem Ei
EndIf
Next
ProcedureReturn Dings
EndProcedure
OpenConsole()
PrintN(":: WortDingli Simple V.0.1, (c) 2006 by Folker Linstedt")
PrintN("::")
PrintN(":: Bitte geben Sie ein Tu(n)-Wort in seiner Grundform in der Gegenwartsform ... ::")
PrintN(":: ... bzw. ein Verb im Infinitiv im PrAesens ein ::")
PrintN("")
Print("Eingabe: "): Eingabe=Input() ; Keine weitere Überprüfung
;PrintN(""); für PB 3.94 notwendig, da Input nicht allein in die Nächste Zeile springt
PrintN("")
Ausnahme=0; Ausnahmen müssten in einer Datenbank aufgenommen werden
Satz.s
Satz=Eingabe+" "; + " " für Wort-Erkennung!
WortZahl=CountString(Satz, " ")
Dim Wort.s(WortZahl)
p.l=-1
For i=0 To WortZahl
If VokaKuck(StringField(Satz,i," "))<>0
p+1
Wort(p) = StringField(Satz,i," ")
EndIf
Next ; Okay, es klappt, aber fragt mich nicht warum
For i=1 To WortZahl ; Auch wenn Wir/Sie und Er/Sie/Es gleich sind, ist es für die Ausgabe einfacher
PrintN(" "+Wort(i))
Next
Input() ; Warte bis Enter
Ich denke, es ist möglich einen Filter zu machen, der z.B. folgendes schon kann:
Der Mann geht langsam weg.
> Mann ist groß geschrieben, also ist das Subjekt bis dorthin.
- Der Mann -
Nach dem Subjekt muss sofort das Prädikat kommen.
>> also "geht"
Der Rest ist dann irgendein Objekt oder sowas.
Subjekt, Prädikat, Objekt
>> folgendes geht nicht
Langsam geht der Mann weg.
-> hier müsste man wohl ein Wörterbuch auf "geht" ansetzen.
Und auch auf "langsam" und "weg"
Auf Mann nicht, das kann nämlich auch Frank sein. Und den kennen wir ja noch nicht

Kinder an die Macht http://scratch.mit.edu/
Daisy ist cool.
http://leedberg.com/glsoft/daisy/index.shtml
schaut es euch mal an und vielleicht bekommt ihr ja Ideen, die uns hier helfen.
Gruß, Folker
http://leedberg.com/glsoft/daisy/index.shtml
schaut es euch mal an und vielleicht bekommt ihr ja Ideen, die uns hier helfen.
Gruß, Folker

Kinder an die Macht http://scratch.mit.edu/