AIML Musterabgleich - Howto?
-
11-09-2019 - |
Frage
ich habe ein Problem versuchen zu verstehen, wie funktioniert AIML Pattern-Matching funktioniert.
Was ist der Unterschied zwischen _
und *
? Und wie ich sie verwenden, um die beste Übereinstimmung zu bekommen?
Ich habe diesem Dokument nur, aber es fehlen einige gute Beispiele.
Lösung
A * wird alles akzeptiert, es sei denn ein Muster eines Wortes oder mehrerer Wörter übereinstimmen
A _ wird alles akzeptiert, auch wenn ein Muster eines Wortes oder mehrere Worte passen könnte
<pattern>BYE _</pattern>
macht keinen Sinn, da <pattern>BYE *</pattern>
die gleichen Muster übereinstimmt, aber <pattern>BYE _</pattern>
wird <pattern>BYE * SEE YOU</pattern>
während BYE Schatten * nicht.
Verwenden _ sorgfältig, zum Beispiel _ würde alles und Ihr Bot gibt alle mal der gleiche Antwort entspricht.
<pattern>_ A COUPLE OF WORDS *</pattern>
und <pattern>_ A COUPLE OF WORDS</pattern>
ist der richtige Weg _ zu verwenden, wenn Sie alle mal ein paar Worte fangen wollen innerhalb oder am Ende eines Satzes ist.
Andere Tipps
_ und * sind beide Platzhalter, der Unterschied ist, wo sie sollten in Musterabgleich verwendet werden.
_ should be used before the word or phrase you're matching on
* should be used after the word or phrase you're matching on.
Siehe auch: AIML spec
dies besser zu verstehen, es Beispiele in den bestehenden AIML Bots sucht wert sein kann.
Siehe auch: Downloads , diese ein Saluations.aiml hat Beispiele