目标文件中* *的含义

时间:2016-03-26 19:17:04

标签: artificial-intelligence aiml

我在AIML中获得了以下代码:

<category>
 <pattern>TOP * *</pattern>
 <template><star index="1"/></template>
</category>

应该回馈一个单词列表的第一个元素。 我知道*应该捕获一个或多个单词。 * *?

的含义是什么?

2 个答案:

答案 0 :(得分:3)

如你所述*捕获一个或多个单词。第一颗星将捕获一个单词,其余的将被第二颗捕获。您的模板仅使用第一个星号,因此列表中的第一个元素。

答案 1 :(得分:1)

我知道你问这个问题已经有一段时间了。我有一个类似的问题,发现了XSPLITTER字(与其他任何字一样,但作为一个标志),你可以做什么(我现在正在工作)是过滤输入并添加匹配的XSPLITTER字你的翻译中的正则表达式。或者,更简单的是,在您的情况下,您可以编辑AIML文件并用以下内容替换您的模式:

<category>
    <pattern>TOP * IN *</pattern>
    <template><star index="1"/></template>
</category>

不确定它是否有意义,因为我不知道你想要什么,以及在哪里,但作为一个起点,它可以工作。