code: public T find(String text)
      {
          T match = matcher.match(text, true);
          if (match != null)
          {
              String name = match.name();
              if (name.substring(0, Math.min(name.length(), text.length())).equalsIgnoreCase(text))
              {
                  return match;
              }
          }
          return null;
      }
docs: Returns enum for text if it is unique prefix.
  @param text
  @return