EndWithContainListFunction 自定义表达式实现aviator自定义表达式以【自定义规则】结尾,

  • 1、展示实现逻辑

/****
 * 主要是实现以、、、、为结尾的表达式逻辑
 * @param env  Map
 * @param arg  入参1,作为一个可变的参数变量
 * @param arg2  一个Map的key',在Map里面获取List这样就可以实现获取Value
 * @return  Boolean
 */
  • 2、展示运行结果

public static void main(String[] args) {
    //注册自定义表达式函数
    AviatorEvaluator.addFunction(new EndWithContainListFunction());
    AviatorEvaluator.addFunction(new ContainListFunction());
    String expression = "endwithcontainlist('测试数据后面是末尾实际值abc', 'title')||endwithcontainlist('字符串', 'title')";
    Expression compiledExp = AviatorEvaluator.compile(expression);
    /***
     * 测试数据入参Map《key,List》正常格式
     */
    Map fields = new HashMap();
    List stringList = new ArrayList<>();
    stringList.add("前值");
    stringList.add("实际值abc");
    fields.put("title", 

你可能感兴趣的:(Aviator工作中数据过滤,2020年工作,aviator自定义表达式)