code: public PathMatch matcher(String rawPath) {
          if (rawPath.startsWith("/")) {
              rawPath = rawPath.substring(1);
          }
          Matcher matcher = pattern.matcher(rawPath);
          if (matcher.matches()) {
              HashMap<String, String> params = new HashMap<>();
              for (String namedGroup : namedGroups) {
                  params.put(namedGroup, urlDecode(matcher.group(namedGroup)));
              }
              return new PathMatch(true, params, matcher);
          } else {
              return new PathMatch(false, Collections.emptyMap(), matcher);
          }
      }
docs: Matches the given raw path against this pattern.
  @param rawPath The URL-encoded path to match, for example <code>/example/some%20path</code>
  @return Returns a {@link PathMatch} where {@link PathMatch#prefixMatches()} is <code>true</code> if the URI matches
  and otherwise <code>false</code>.