INNER CODE UNIT · Python

_match_pattern

ArcSurge/Termius-Pro-zh_CN · lang.py:202

def _match_pattern(name, pattern, is_dir, is_root=False):
    """模式匹配(支持 .gitignore 风格)"""
    if pattern.startswith('/') and not is_root:
        return False
    pattern = pattern.lstrip('/')

    pattern = pattern[2:] if pattern.startswith('*/') else pattern

    if pattern.endswith('/'):
        clean_pattern = pattern[:-1]
        has_wildcard = '*' in clean_pattern or '?' in clean_pattern
        return is_dir and (name == clean_pattern if not has_wildcard else fnmatch.fnmatch(name, clean_pattern))

    has_wildcard = '*' in pattern or '?' in pattern
    return name == pattern if not has_wildcard else fnmatch.fnmatch(name, pattern)


def is_comment_line(line):

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…