Почему Уотсон не распознает это регулярное выражение input.text.find ("(\\ d) \\ 1+")? - PullRequest
0 голосов
/ 29 мая 2018

Я пытаюсь распознать повторяющиеся числа из пользовательского текста.

Например: 112345

Уотсон должен распознать повторный 1 (один) и ответитьоднако с определенным текстом не распознает этот шаблон.

Я использую следующее для распознавания этого шаблона, который не работает:

input.text.find("(\\d)\\1+")

1 Ответ

0 голосов
/ 05 июня 2018

К сожалению, Watson Assistant не поддерживает Backreferente для регулярных выражений.

Вот документация об этом.

"Шаблоны сущностей могут не содержать:

  • Положительные повторения (например, x * +)
  • Обратные ссылки (например, \ g1)
  • Условные переходы (например (? (Cond) true)) ""

https://console.bluemix.net/docs/services/conversation/entities.html#defining-entities

Эта часть посвящена регулярному выражению сущностей, но во всех моих тестах она также действительна для распознавания регулярного выражения в text.input.Обычно, когда нам нужно использовать более сложные регулярные выражения, мы в конечном итоге используем на прикладном уровне.

...