我在尝试理解 AIML 模式匹配的工作原理时遇到了问题。_
有什么区别和 *
?我应该如何使用它们来获得最佳匹配?
我有 this document只是,但它缺乏一些很好的例子。
最佳答案
除非匹配一个单词或多个单词的模式,否则 * 将匹配任何内容
即使一个单词或多个单词的模式可以匹配,A _ 也将匹配任何内容<pattern>BYE _</pattern>
没有意义,因为 <pattern>BYE *</pattern>
匹配相同的模式,但 <pattern>BYE _</pattern>
会影<pattern>BYE * SEE YOU</pattern>
而 BYE * 不会。
小心使用 _,例如 _ 会匹配任何东西,你的机器人每次都会给出相同的答案。<pattern>_ A COUPLE OF WORDS *</pattern>
和 <pattern>_ A COUPLE OF WORDS</pattern>
是使用 _ 的正确方法,如果您想每次都捕获 A COUPLE OF WORDS 在句子内部或结尾处。
关于artificial-intelligence - AIML 模式匹配 - 如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1838620/