def compare_ccatParse(ref, ccatParse):
    """Compare a parsing code (ccat-parse) to a reference.
    Wildcard (*) accepted.

    A parsing code is a 8-char word:
        person (1=1st, 2=2nd, 3=3rd)
        tense (P=present, I=imperfect, F=future, A=aorist, X=perfect, Y=pluperfect)
        voice (A=active, M=middle, P=passive)
        mood (I=indicative, D=imperative, S=subjunctive, O=optative, N=infinitive, P=participle)
        case (N=nominative, G=genitive, D=dative, A=accusative)
        number (S=singular, P=plural)
        gender (M=masculine, F=feminine, N=neuter)
        degree (C=comparative, S=superlative)

    Examples:
        compare_ccatParsr('*PAI-*--', '1PAI-S--') --> True
        compare_ccatParsr('****-P--', '1PAI-S--') --> False

    Notice: about parsing code, see the README.md file of the
            sblgnt library.
    """

    for i, j in zip(ref, ccatParse):
        if i == '*': continue
        if i != j : return False

    return True