import re


def fuzzyfinder(user_input,collection):
    """
    fuzzy matching, to obtain a fuzzy matched list.
    >>>collection = [
                    "user_name",
                    "api_user",
                    "school",
                    "email"
                    ]
    >>>fuzzyfinder("user",collection)
    ["user_name","api_user"]
    """
    suggestions = []
    pattern = ".*?".join(user_input)
    regex = re.compile(pattern)
    for item in collection:
        match = regex.search(item)
        if match:
            suggestions.append((len(match.group()),match.start(),item))
    
    return [x for _, _, x in sorted(suggestions)]