A straightforward solution is to express that keywords are alphabetic only and may match contiguous alphabetic strings exactly, ignoring case. More, matches really should be considered line by line, not sentence by sentence. We can use a regex to locate alphabetic sequences and sets to check containment like so: Transport: https://chanceudvmi.thezenweb.com/top-latest-five-discounted-nike-shoes-pallets-urban-news-70238795