@nikoiman

Как сделать, чтобы BOT на Python читал слова без символов?

Делаю бота для Discord. Бот должен увидеть слова из своего словаря в сообщениях и соответственно ответить. Например: Я пишу слово "привет" и бот отвечает "здравствуйте". А если я напишу " привет, " - то бот уже не ответит, так как запятая "мешает" боту увидеть слово "привет".

Как сделать, чтобы бот не обращал внимания на символы, удалял их. Или подскажите как правильно загуглить, ибо я гуглил и все не то.
  • Вопрос задан
  • 204 просмотра
Пригласить эксперта
Ответы на вопрос 1
nullnull
@nullnull
В зависимости от того, как бот читает слова и что потом с ними делает.

1. Если ему нужен список отдельных слов, то вот в этом примере (первый ответ) привели разделение при помощи регулярок. ru.stackoverflow.com/questions/905570

2. Если регулярки сложно, и копипаста не помогла, то вариант проще: строки и обработка строк, например, replace, strip и split.
replace - можно выбрать символы и убрать их. Что можно бывает. перенос строк, таб (это всё спец.символы. если что), и далее все символы с клавиатуры, что не буквы. Хотя по мне, этот вариант менее рациональный, чем первый, потому что удалять из текста много что можно.

3. Ещё проще: вырезать слова, проходясь по циклу и собирая их строчку и строчку в список. Это как первый вариант, но без регулярок, опят же.

А так же можно задуматься над:
  • что если там не одно слово, а целая фраза? Надо подумать про склеивание предложений, можно через join в строках. Или проход по массиву\списку строк и смотреть соседний элемент.
  • что если там будет слово с заглавной буквы? Не забыть про lower() в строках
  • А если хочется для бота больше осознанности? Погуглить в сторону "что такое графы" и "что такое конечные автоматы", есть бесплатные курсы. Тогда бота будет интереснее разрабатывать, смотря зачем :)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы