解析电子邮件和电话号码实体?
Posted
技术标签:
【中文标题】解析电子邮件和电话号码实体?【英文标题】:Parsing email and phone number entities? 【发布时间】:2017-12-18 22:53:42 【问题描述】:有没有一种方法可以训练 Watson 识别电子邮件实体和电话号码,而无需求助于普通快递?
【问题讨论】:
也许您想了解 Watson Conversation 中实体的新版本,请查看我的编辑。 【参考方案1】:以前:
史蒂文,几个月前我也有同样的疑问。 IBM 沃森对话 没有电话号码或电子邮件地址的系统实体,没有 还。无论如何,创建新的系统实体是个好主意, 正确的?我们可以为 IBM 提供想法和反馈。
但是,一种轮廓解决方案是使用上下文变量并创建新的 实体。尝试创建一个像
@gmail.com
、@hotmail.com
、@outlook.com
以及您发送的任何电子邮件 想认。您将使用以下条件:
if @mail, response: Your e-mail is $email
用于识别电子邮件地址,但用于保存您的电子邮件 需要在
context
变量中创建一个正则表达式,例如:"email": "<? input.text.extract('[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+(\\.[a-zA-Z]+)1,',0)?>"
现在,
phone
号码:你可以激活系统实体
@sys-number
,你会得到 只有几个数字,比如 11 个数字,并保存在一个上下文中 变量也。使用
@sys-number AND input.text.find('^[^\\d]*[\\d]11[^\\d]*$',0)')
创建一个条件以查找号码 和sys-number
用于识别用户的数字。
编辑:(带有新的发行说明 - 在 BETA 版本中):
现在,IBM Watson Conversation 具有实体模式,我们可以使用它来获取电子邮件地址、电话号码等。
现在,当您创建一个新的@entity
时,您可以可选地告知您要使用Pattern
或Synonymous
,因此,您将创建一个新实体,在我的示例中,@contactInfo,以及带有 patterns
的值,用于获取 mail 或 phone 值,例如:
并且,在 Watson 训练您的更改之后,检查在 Try it Now 中完美运行:
邮件模式:\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]2,\b
,例如 test@gmail.com
美国电话模式:(\d3)-(\d3)-(\d4)
,例如800-426-4968
查看更多关于创建实体here。
【讨论】:
以上是关于解析电子邮件和电话号码实体?的主要内容,如果未能解决你的问题,请参考以下文章