error) {
var matched int
word = strings.ToLower(word)
words := strings.Split(word, " ")
for word := range words {
for positive := range positives {
if positive == word {
amount = amount + 1
}
}
for negative := range negatives {
if negative == word {
amount = amount - 1
}
}
}
if matched >= amount {
return true, nil
}
return false, nil
}Есть такая функция - она проверяет на наличие ключевых слов в слове
Разделяет его на список
Дальше каждую часть проверяет с позитивными
И каждую часть с негативными
Если порог входа [amount] подходит то тру - если нет - фолс
Функция которую я сделал - мусорка, можно сделать лучше какт?
можно
ну и ошибки тут есть
words := strings.Split(word, " ") разделитель может быть не только пробел, знаки препинания
а еще можно сделать map[string]int8 и заполнить его словами positive как 1 и negative как -1
Обсуждают сегодня