

def _get_pronoun(self, regex_match):
    '\n        Get pronoun from the pronoun marker in the text. This is used as\n        the callable for the re.sub function.\n\n        Args:\n            regex_match (MatchObject): the regular expression match.\n\n        Notes:\n            - `{s`, `{S`: Subjective form: he, she, it, He, She, It\n            - `{o`, `{O`: Objective form: him, her, it, Him, Her, It\n            - `{p`, `{P`: Possessive form: his, her, its, His, Her, Its\n            - `{a`, `{A`: Absolute Possessive form: his, hers, its, His, Hers, Its\n\n        '
    typ = regex_match.group()[1]
    gender = self.attributes.get('gender', default='neutral')
    gender = (gender if (gender in ('male', 'female', 'neutral')) else 'neutral')
    pronoun = _GENDER_PRONOUN_MAP[gender][typ.lower()]
    return (pronoun.capitalize() if typ.isupper() else pronoun)

dataset/ETHPy150Open evennia/evennia/evennia/contrib/gendersub.py GenderCharacter._get_pronoun/original