import re


def regex_overlap(text, regex):
    """ for a list of tokens in text and a regex, match it in the
    tokens and return a list of booleans denoting which tokens are
    a part of the match """
    overlap = [False for t in text]
    for m in re.finditer(regex, ' '.join(text)):
        begin, end = m.span()
        i = 0
        for j, t in enumerate(text):
            if begin <= i < end or begin <= i+len(t) < end:
                overlap[j] = True
            i += len(t) + 1
    return overlap