<that>
のワイルドカードシンボル(”*” or “_”)に一致した部分を抽出します。
1 2 3 4 5 6 7 8 9 10 |
<category> <pattern>何を食べたい?</pattern> <template>うどんとカレーが食べたい</template> </category> <category> <pattern>どちらかにしたら?</pattern> <that>*と*が食べたい</that> <template>では<thatstar/>にします</template> </category> |
属性
名称 | 型 | 必須 | デフォルト | 説明 |
---|---|---|---|---|
index |
integer |
– | 1 |
抽出対象のインデックスを指定します。 |
name 独自拡張 |
string |
– | – | 抽出対象の上位概念を指定します。 指定できる上位概念については、こちらを参照してください。 |
index
抽出対象のインデックスを指定します。
インデックスは<that>
タグのワイルドカードシンボルに対して先頭から1, 2…と数えます。
また、指定したインデックスが無効の場合は、空文字を出力します。
Example
xAIML
1 2 3 4 5 6 7 8 9 10 |
<category> <pattern>何を食べたい?</pattern> <template>うどんとカレーが食べたい</template> </category> <category> <pattern>どちらかにしたら?</pattern> <that>*と*が食べたい</that> <template>では<thatstar index="2"/>にします</template> </category> |
実行結果
1 2 3 4 |
user > 何を食べたい? bot > うどんとカレーが食べたい user > どちらかにしたら? bot > ではカレーにします |
name
抽出対象の上位概念を指定します。
指定できる上位概念については、こちらを参照してください。
上位概念に一致した値のうち、指定したインデックスの値を返します。
指定したインデックスに値がない場合は、空文字を返します。
ご注意
<that>
の内容に完全一致した場合など、上位概念が参照されなかった場合は空文字を返します。
Example
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
<category> <pattern>明日の昼食は何が食べたい?</pattern> <template>明日の昼食はうどんとカレーが食べたい</template> </category> <category> <pattern>明日の夕食は何が食べたい?</pattern> <template>明日の夕食はうどんとカレーが食べたい</template> </category> <category> <pattern>何食べたいんだっけ?</pattern> <that>*の夕食は*と*が食べたい</that> <template> <!-- 直前の発話が「明日の昼食はうどんとカレーが食べたい」の場合は、「うどん」が出力されます。 --> <!-- 直前の発話が「明日の夕食はうどんとカレーが食べたい」の場合は、完全一致するため何も出力されません。 --> <thatstar name="hy_food"/> </template> </category> |
子要素
子要素を持ちません。