import re

file_text = 'twenty-two\t22\nseventy-two thousand\t72000'
listfile = [x.split('\t') for x in file_text.splitlines()]
dictRessource = {str(rows[0]):str(rows[1]) for rows in listfile}
regex = re.compile( "|".join([r"\b{}\b(?!((\s?\b\d\b\s?)|(\s?(hundred|thousand|mille|milliard|million|billion|trillion))?(\s?\(?\d?{}\)?)))".format(x.replace('-', r'[\s-]'), y) for x,y in dictRessource.items()]) , re.I)
    
def transform(line):
    return regex.sub(lambda match: dictRessource[match.group(0).lower().replace(' ', '-')], line) 
    
print( transform("Some tWenty-two things and twEnty two ...") )