Мне нужно, чтобы пользователь ввел свой номер рейса, чтобы получить информацию о нем.
Есть ли способ определить и сохранить введенный им номер рейса (3-4 цифры + слова)?
Я знаю, что Я могу создать объект для хранения некоторых частей пользовательского ввода, но мне кажется, что мне нужно жестко запрограммировать значения, которые я хочу получить, что непрактично.
Итак, есть ли возможность сделать watson автоматически определять часть пользовательского ввода (не ограничиваясь числами).
Обнаружение числа в сущности в IBM Watson Conversation
Ответы (1)
В разделе состояния вы можете указать следующее.
input.text.matches('.*?[0-9]{3,4}.*?')
Для области вывода перейдите в расширенный режим и выполните следующие действия.
{
"output": {
"text": "You typed a 3-4 digit number. I stored it in Context variable 'found'"
},
"context": {
"found": "<? input.text ?>"
}
}
Затем вы можете запросить переменную контекста found
в своем коде, чтобы выполнить с ней более сложные действия.
После этого ответа разговор был обновлен. Теперь вы можете использовать input.text.extract()
вместо просто input.text
.
Вот так:
"found": "<? input.text.extract('.*?([0-9]{3,4}).*?',1) ?>"
person
Simon O'Doherty
schedule
18.09.2016