美好的一天伙计们,
请问如何对从用户输入中读取的文本执行不区分大小写的匹配?我注意到这段代码片段
"context": {
"number_extract": "<? input.text.extract('my name is ([\\w\\s\\w]*)', 1) ?>"
}
如果用户输入我的名字 ....... ,将不匹配
另外,任何人都可以建议一个很好的资源,我可以在对话框屏幕中使用正则表达式。
非常感谢。
答案 0 :(得分:2)
Watson对话支持SPEL https://www.ibm.com/watson/developercloud/doc/conversation/expression-language.html
对于正则表达式,您可以执行
input.text.matches( '[0-9]+' )
我没有检查,但你可以做
input.text.equalsIgnoreCase( 'xxxxx' )
您也可以
input.text.toUpperCase().matches(YOUR_REGEX)
<强>最后强> 您可以使用以下(?i)来区分大小写。 见https://blogs.oracle.com/xuemingshen/entry/case_insensitive_matching_in_java