code: public static <T> Collection<T> matchToString(Collection<T> values, String name) {
          List<T> result = new ArrayList<>();
          for (T value : values) {
              if (value == null) {
                  continue;
              }
              if (startsWithIgnoreCase(value.toString(), name)) {
                  result.add(value);
              }
          }
          return result;
      }
docs: Matches a value using a name and the value .toString() method
  
  @param values to look into
  @param name to match against
  @return a collection of values that matched