import fnmatch


def filter_match(patterns, parts):
    """Check if any of the given patterns match the split path"""
    # Fast match - assumes that if the length of parts is
    # larger than the length of the pattern, then it already matched
    # previously
    count = len(parts)
    for pattern in patterns:
        pattern_count = len(pattern)
        if count <= pattern_count:
            for i in range(count):
                if not fnmatch.fnmatch(parts[i], pattern[i]):
                    return False
    return True