Здравствуйте! Пишу второго бота на базе pyTelegramBotApi (telebot), он должен реагировать на стоп-слова, которые можно задать командой, но проблема заключается в том, что мне надо как-то искать эти слова, и логично было бы использовать метод message.text.lower().find([stopwords]) с используемым шаблоном 'слово', 'слово', 'слово', но в функции .find() это не поддерживается. Как искать несколько слов в предложении?
Для поиска слова по точному совпадению регекспы излишни. Это из пушки по воробьям. Конечно знать и уметь с ними работать нужно каждому программисту, но посмотрите на вопрос, ку да ему еще и регекспы на этом этапе, если он не понимает как простейшую функцию с циклом сделать?
Регекспы можно было бы использовать в более продвинутом решении этой задачи, например брать слова, нормализовать, конвертировать в регексп, который будет матчиться со всеми словоформами. Однако регекспы - это не панацея, и, если что-то решается более-менее эффективно и элегантно без них, то следует обойтись.
В данном случае речь, вроде бы, идёт о полных словах по точному совпадению. Хотя, конечно, вопрос поставлен так себе. Можно сплитнуть входную строку, а искомые слова конвертнуть в множество. Прозрачность и понятность такого решения утрёт нос регекспам, производительность сильно не пострадает, стабильность и предсказуемость производительности (в отличие от регекспов) тоже лучше, тем более, если учесть, что слова ищут в тексте сообщений мессенджера, если я правильно понял, а это не "Война и Мир".