Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
re solution in Clear category for Keywords Finder by tom-tom
from re import finditer, escape
def checkio(text, words):
spans = ([m.start(1), m.end(1)] for word in words.lower().split()
for m in finditer(f'(?=({escape(word)}))', text.lower()))
span, *others = sorted(spans) + [[None]]
result = text[: span[0]]
for other in others:
if other[0] is None or other[0] >= span[1]:
result += '' + text[span[0] : span[1]] + '' + text[span[1] : other[0]]
span = other
else:
span[1] = max(span[1], other[1])
return result
May 17, 2019
Comments: