def clean_string(filename):
    """
    Clean the string, only keep alnum, spaces and -
    :param filename:
    :return:
    """
    whitelist = set('abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-')
    filename = ''.join(filter(whitelist.__contains__, filename))
    filename = filename.lower().strip()
    return filename