def expQuestions(s):
    """For OCR w/ a questionmark in them, expand questions with
    @s for all possibilities"""
numqs = s.count('?')
blah = list(s)
for expqs in cartesian_product([(0, 1, 2, 3)] * numqs):
    newblah = blah[:]
qi = 0
for i, c in enumerate(newblah):
    if newblah[i] == '?':
        newblah[i] = '@' * expqs[qi]
qi += 1
yield ''.join(newblah)
elegant way to match two wildcarded strings