diff --git a/json-path/src/main/java/com/jayway/jsonpath/internal/filter/ArrayEvalFilter.java b/json-path/src/main/java/com/jayway/jsonpath/internal/filter/ArrayEvalFilter.java index 1473eba8..b04f1fa5 100644 --- a/json-path/src/main/java/com/jayway/jsonpath/internal/filter/ArrayEvalFilter.java +++ b/json-path/src/main/java/com/jayway/jsonpath/internal/filter/ArrayEvalFilter.java @@ -31,8 +31,7 @@ public class ArrayEvalFilter extends PathTokenFilter { private static final Pattern CONDITION_STATEMENT_PATTERN = Pattern.compile("\\[\\s?\\?\\(.*\\)\\s?]"); private static final Pattern CONDITION_PATTERN = Pattern.compile("\\s?(@.*?)\\s?([!=<>]+)\\s?(.*?)\\s?"); - private static final Pattern FIELD_EXISTS_PATTERN = Pattern.compile("\\s?@\\s?(.*?)\\s?"); - private static final Pattern HASPATH_PATTERN = Pattern.compile("\\s?(@\\..*)\\s?(.*?)\\s?"); + private static final Pattern HASPATH_PATTERN = Pattern.compile("\\s?(@.*)\\s?(.*?)\\s?"); private static final Pattern REGEX_PATTERN = Pattern.compile("\\s?\\/(.*)\\/\\.test\\((@\\..*)\\)\\s?"); private Expression[] expressions; @@ -115,11 +114,6 @@ public class ArrayEvalFilter extends PathTokenFilter { String field = regexMatcher.group(2).trim(); return new RegexExpression(regex, field); } - Matcher fieldExistsMatcher = FIELD_EXISTS_PATTERN.matcher(condition); - if (fieldExistsMatcher.matches()) { - // Field exists check, the single '@' in: $.menu.items[?(@ && @.id == 'ViewSVG')].id - return new OperatorExpression(condition, "@.", "!=", "null"); - } return null; }