Я пытаюсь просмотреть строки по заданным ключевым словам, но в некоторых случаях ключевые слова содержатся в других словах, что приводит к ложному срабатыванию. Я уверен, что ответом на этот вопрос является регулярное выражение, я просто не уверен, как правильно его реализовать. Вот пример того, что происходит.
Код: Выделить всё
val keyword = "NFL"
val someCompareString = "This week in the NFL something is happening."
val someOtherCompareString = "In the middle east there is an ongoing conflict of some kind."
// I expect this to return TRUE
if (someCompareString.lowercase().contains(keyword))
// I expect this to return FALSE
if (someOtherCompareString.lowercase().contains(keyword))
Вторая строка возвращает «истина», поскольку слово «конфликт» содержит «nfl». Я понимаю, что происходит, но не делаю ничего глупого со строкой, например, беру ключевое слово и добавляю пробел/запятую/восклицательный знак/точку как до, так и после, а затем проверяю все эти возможные комбинации... Я не уверен, как правильно справиться с этим. Есть у кого-нибудь совет?
Подробнее здесь:
https://stackoverflow.com/questions/793 ... dded-words