code: private boolean matchStrings(String pattern, String str, Map<String, String> uriTemplateVariables) {
  		AntPathStringMatcher matcher = this.stringMatcherCache.get(pattern);
  		if (matcher == null) {
  			matcher = new AntPathStringMatcher(pattern);
  			this.stringMatcherCache.put(pattern, matcher);
  		}
  		return matcher.matchStrings(str, uriTemplateVariables);
  	}
docs: Tests whether or not a string matches against a pattern. The pattern may contain two special characters:
  <br>'*' means zero or more characters
  <br>'?' means one and only one character
  @param pattern pattern to match against. Must not be {@code null}.
  @param str string which must be matched against the pattern. Must not be {@code null}.
  @return {@code true} if the string matches against the pattern, or {@code false} otherwise.