1

我正在处理IBM Watson Conversation。我有一个包含少量字母和数字的文本,即age is 26.

我写了一个正则表达式来匹配文本中的数字。它是使用.*?[0-9]+.*?. 现在,我希望将那些匹配的数字放入context variables

如何将匹配的数字放入上下文变量中?

当我的条件与 have 匹配时input.text.matches('.*?[0-9]+.*?'),我只想将数字放入我的上下文变量中。

例如:

{
    "context": {
               "digit": { input.text } 
    }
}

这里input.text获取整个文本并将其放入数字变量中。

如何通过在文本上应用正则表达式来仅放置数字?

4

2 回答 2

0

第二个参数是提取工作所必需的,所以如果我们想提取整个匹配的子字符串,我们使用 0 作为 extract_id,如下所示:

input.text.extract('[0-9]+', 0)
于 2017-05-29T02:59:19.443 回答
0

您可以从输入文本中提取正则表达式,如下所示:

input.text.extract('.*?([0-9]+).*?', 1)

第一部分是您的正则表达式。第二个参数是组 ID。

于 2016-10-02T11:26:10.840 回答