pattern = re.compile('_(?:{})_'.format('|'.join([re.escape(w) for w in
    keywords])))
result = list(chain.from_iterable(pattern.split(w) for w in input_list))
Разделение строки на основе определенного набора слов