IBM Watson Conversation:带(智能)引号的模式

IBM Watson Conversation: Patterns with (smart) quotes

我正在尝试 define a pattern-based entity in the Conversation service。该模式旨在捕获双引号之间的字符串。我已经为该实体定义了以下正则表达式:

\"[A-Za-z0-9.:| @\']+\"

在我的 Linux 盒子上一切正常,但在 Mac 等其他环境中似乎不起作用。引号无法识别,因此模式不匹配。有什么想法吗?

该错误或行为的一个可能原因是 弯引号 (这并不总是一个聪明的主意)。在某些系统或某些应用程序中,双引号 (") 被转换为 。我建议扩展模式以包含这样的引号:

[\"„“][A-Za-z0-9.:| @\']+[\"”“]

这样,无论是否启用智能引号,Watson Conversation 服务都会检测开始和结束双引号。我已经成功地将这种模式用于 chatbot interacting with Slack in this tutorial.