1
0
mirror of synced 2026-10-16 20:36:15 +08:00

issue #13 添加正则匹配content路由消息的功能

This commit is contained in:
Daniel Qian
2014-09-02 15:20:14 +08:00
parent b938419f7f
commit fef9f82b23
2 changed files with 20 additions and 0 deletions

View File

@@ -6,6 +6,7 @@ import java.util.List;
import java.util.Map;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.regex.Pattern;
import chanjarster.weixin.bean.WxXmlMessage;
import chanjarster.weixin.bean.WxXmlOutMessage;
@@ -110,6 +111,8 @@ public class WxMessageRouter {
private String content;
private String rContent;
private boolean reEnter = false;
private List<WxMessageHandler> handlers = new ArrayList<WxMessageHandler>();
@@ -170,6 +173,16 @@ public class WxMessageRouter {
return this;
}
/**
* 如果content匹配该正则表达式
* @param regex
* @return
*/
public Rule rContent(String regex) {
this.rContent = regex;
return this;
}
/**
* 设置微信消息拦截器
* @param interceptor
@@ -247,6 +260,8 @@ public class WxMessageRouter {
(this.eventKey == null || this.eventKey.equals(wxMessage.getEventKey()))
&&
(this.content == null || this.content.equals(wxMessage.getContent() == null ? null : wxMessage.getContent().trim()))
&&
(this.rContent == null || Pattern.matches(this.rContent, wxMessage.getContent() == null ? "" : wxMessage.getContent().trim()))
;
}