作一個微信自動回覆有感java
關於問答匹配,通常簡單得處理方法爲關鍵字匹配或者關鍵字包含,部分場景也能夠很好得適用,實現也很簡單,微信公衆號自動回覆就是這種形式。可是對於同一個關鍵字,不一樣得問法可能須要不一樣得答案。好比說關鍵字面包,默認彈出得回覆是麪包的百科信息,若是問題是:我要買麪包,這種狀況就徹底對不上了,還有,可能不一樣關鍵字對應的是同一個回答,這樣須要錄入屢次對應關係,針對這兩個場景,關鍵字匹配就不能知足需求了正則表達式
現解決方式爲 :人工解析問題=>提取多個問題相似關鍵字=>整合關鍵字造成正則表達式微信
例:獲取課表對應問題可能有:去哪下載課表? 怎麼獲取課表?課表去哪下載?等等
關鍵字都是課表,其餘的都是獲取課表的行爲,那麼久能夠提取行爲的關鍵字 和課表生成正則 code
(.*)(下載|獲取|)(.*)(課表)(.*)(下載|)(.*)
這樣就能夠匹配到各類須要課表相關的問題,而後添加回答便可
附實際使用頁面blog
這樣大概能命中大部分問答,剩下的就須要靠人工來溝通了class