【发布时间】:2018-11-13 12:47:08
【问题描述】:
是否可以将实体放在正则表达式中?
例如,假设实体“@pizza-toppings" 包含浇头:
"topping": "<? input.text.extract('(?i)\.+(@pizza-toppings)(?-i)', 1) ?>"
所以,如果@pizza-toppings 匹配“洋葱”,那么"(?i)\.+(@pizza-toppings)(?-i)" 将是"(?i)\.+(onion)(?-i)"。如果匹配"cheese",那么它将是"(?i)\.+(cheese)(?-i)"等等。
我一直在努力寻找解决方案,但到目前为止我什么也没找到。
【问题讨论】:
-
您的意思是在对话节点中评估的正则表达式中吗?你能添加更多关于你想要完成的细节吗?
-
是的,我在一个对话节点中。字符串
"toppings"将被分配与提取的返回 -
而且它是只有 1 顶。不是浇头。我编辑了问题并进行了更改。
-
因此,如果它与实体
@pizza-toppings内的顶部匹配,则该值将分配给字符串"topping"。 -
为什么要这么做?也许有不同的方式...你可以先尝试组合模式字符串,然后使用带有字符串作为参数的变量吗?
标签: regex ibm-cloud chatbot watson-conversation spring-el