Pandorabots - 检测 Phone、电子邮件等

Pandorabots - Detect Phone, Email, etc

美好的一天。 Pandorabots AIML 是否支持复杂的 REGEX?例如,访问者键入“+1 (555) 123.4567”(仅或在某些文本中),聊天机器人必须理解它是 phone#。 是否可以使用类似的东西:

.* (+?\d[.-\s]?\(?\d{3}\)?[.-\s]?\d{3}[.-\s]?\d{4}) .*

GET ONLY -> 1$

如果否 - 如何正确检测用户响应中的 phone、电子邮件或用户名。

您不能在 Pandorabots 中使用 REGEX,您必须自己编写类别来处理这个问题。这是一个基本的,它使用名为 "number" 的内置集合来识别格式为 +1 nnn nnn nnn

的 phone 数字
<category>
    <pattern>1 <set>number</set> <set>number</set> <set>number</set></pattern>
    <template>Is that a phone number?</template>
</category>

您可以自己创建新集来验证输入,因此对我的基本类别的改进是使用一组 3 位数字来验证,而不是任何数字。

同样,您可以通过查看是否有@ 和 来检查电子邮件。输入中的字符。假设您使用的是标准替换,您可以像这样创建一个类别:

<category>
    <pattern>* AT * DOT *</pattern>
    <template>Thanks for your email.</template>
</category>