作一个微信自动回复有感java
关于问答匹配,通常简单得处理方法为关键字匹配或者关键字包含,部分场景也能够很好得适用,实现也很简单,微信公众号自动回复就是这种形式。可是对于同一个关键字,不一样得问法可能须要不一样得答案。好比说关键字面包,默认弹出得回复是面包的百科信息,若是问题是:我要买面包,这种状况就彻底对不上了,还有,可能不一样关键字对应的是同一个回答,这样须要录入屡次对应关系,针对这两个场景,关键字匹配就不能知足需求了正则表达式
现解决方式为 :人工解析问题=>提取多个问题相似关键字=>整合关键字造成正则表达式微信
例:获取课表对应问题可能有:去哪下载课表? 怎么获取课表?课表去哪下载?等等
关键字都是课表,其余的都是获取课表的行为,那么久能够提取行为的关键字 和课表生成正则 code
(.*)(下载|获取|)(.*)(课表)(.*)(下载|)(.*)
这样就能够匹配到各类须要课表相关的问题,而后添加回答便可
附实际使用页面blog
这样大概能命中大部分问答,剩下的就须要靠人工来沟通了class