private static String toQualifiedName(final String displayName) {
        // "My Field (something)" => "myfieldsomething"
        final String qualifiedName = displayName.chars()
                .mapToObj(i -> {
                    final char chr = (char) i;
                    final Optional<String> optStr = Character.isLetterOrDigit(chr)
                            ? Optional.of(String.valueOf(chr))
                            : Optional.empty();
                    return optStr;
                })
                .filter(Optional::isPresent)
                .map(Optional::get)
                .collect(Collectors.joining());

        return qualifiedName
                .toLowerCase()
                .trim();
    }
Creates a field that is a default field which does not havee to be qualified. You can have multiple
default fields. If there are multiple then the predicate for each default field are OR'd together.

@param displayName     The display name or column heading for the field in the table.
@param filterQualifier The custom field qualifier used in the quick filter. Only use this if you want a
                       qualifier that is different from the display name. Should match ^[a-zA-Z0-9]+$
stroom-util-shared/src/main/java/stroom/util/shared/filter/FilterFieldDefinition.java