2016-09-17 1 views
0

Мне нужен пользователь, чтобы ввести его номер рейса, чтобы получить его данные для него.
Есть ли способ обнаружить и сохранить номер рейса (3-4 цифры + слова), который он ввел?
Я знаю, что я могу создать объект для хранения некоторых частей пользовательских входов, но мне кажется, что мне нужно жестко кодировать значения, которые я хочу получить, что нецелесообразно.
Итак, есть ли способ заставить watson автоматически определять часть пользовательского ввода (не ограничиваясь номерами).Обнаружение числа в сущности в IBM Watson Разговор

ответ

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) ?>"