Вообщем мне в строке нужно подстроку (слово). Стало понятно, что простой встроенной функции мне не хватит, куча склонений и окончаний слова и грамотность пользователя мне не позволят. Какой алгоритм лучше использовать?
Исправить ошибки в строке -> привести все слова в начальную форму (бегала->бегать) -> найти нужное. Есть библиотеки которые это умеют. Начать поиск можно отсюда.