У меня сейчас небольшая проблема.Я пытаюсь написать программу, которая будет выделять вхождения слова или фразы внутри другой строки, но только если строка, с которой сопоставляется, точно такая же.Часть, с которой я сталкиваюсь, заключается в определении того, содержится или нет подфраза, с которой я сопоставляю фразу, в другом большем подфразе.
Быстрый пример, показывающий эту проблему:
>>> indicators = ["therefore", "for", "since"]
>>> phrase = "... therefore, I conclude I am awesome."
>>> indicators_in_phrase = [indicator for indicator in indicators
if indicator in phrase.lower()]
>>> print indicators_in_phrase
['therefore', 'for']
Я не хочу, чтобы 'for' был включен в этот список.Я знаю, почему он включен, но я не могу вспомнить ни одного выражения, которое могло бы отфильтровать такие подстроки.
Я заметил другие подобные вопросы на сайте, но каждый из них связан с решением Regex, котороеэто то, что я не чувствую себя комфортно, особенно не в Python.Есть ли какой-нибудь простой способ решить эту проблему без использования выражения Regex?Если нет, то будет очень полезно соответствующее выражение Regex и то, как оно может быть реализовано в приведенном выше примере.