Java将一个含有逻辑运算符的字符串转化成逻辑表达式
/**
*
* @author: Longjun
* @Description: 将${money>=2000&&money<=4000}字符串截取成"money>=2000&&money<=4000",
* 然后判断一个数值字符串是否在此区间内
* @date:2016年3月21日 上午11:25:32
*/
public static Boolean isInclude(String elValue,String elString){
String el = elString.substring(elString.indexOf("{")+1, elString.indexOf("}"));
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("js");
engine.put("money",elValue);
boolean eval = false;
try {
eval = (boolean) engine.eval(el);
} catch (ScriptException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return eval;
}