![]() |
|
|
![]()
|
|
| alexssman |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 10.11.2008 Репутация: нет Всего: нет |
Доброе время суток, помогите с такой бедой
пишу бота, типа болтуна. нужен для курсовой. подскажите как реализовать такую штуку, чтобы он видел определенные слова в строке ввода, и реагировал на них. например чтобы в строке: "привет железяка" видел слово привет, и производил действие. у меня на уме только: if (Memo2->Lines->Text=="привет")... но при этом он не отвечает на фразу "привет железяка" а отвечает исключительно на "привет". помогите советом, хоть на путь истинный направьте |
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 11 Всего: 130 |
Только в идеале ещё бы регистр учитывать надо. Это сообщение отредактировал(а) Данкинг - 10.11.2008, 02:11 -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| alexssman |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 10.11.2008 Репутация: нет Всего: нет |
спасибо, дельный совет.
а можно ли сюда прикрутить еще одно условие, типа if (Memo2->Lines->Text.Pos("железяка")!=0) or (Memo2->Lines->Text.Pos("железо")!=0) {} как то так |
|||
|
||||
| mrbrooks |
|
|||
![]() трололомен ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4259 Регистрация: 4.10.2006 Где: Дол Гулдур Репутация: 167 Всего: 306 |
alexssman, а ты попробуй
|
|||
|
||||
| YanTsys |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 22.3.2006 Репутация: нет Всего: нет |
С игнорированием регистра (все буквы в проверяемой строке преобразовавыются к нижнему регистру)
|
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 11 Всего: 130 |
Нужно даже! -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| alexssman |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 10.11.2008 Репутация: нет Всего: нет |
как прелесно, решение всех моих проблем
а как насчет такого: у меня код выглядит примерно так
и так на каждое слово. как в итоге сделать, чтобы при вводе всех остальных слов, которых нет в списке, выводился какойто ответ. если есть if, то можно и else прикрутить. Это сообщение отредактировал(а) alexssman - 10.11.2008, 12:15 |
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 11 Всего: 130 |
На Билдере есть оператор выбора switch!
-------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| mrbrooks |
|
|||
![]() трололомен ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4259 Регистрация: 4.10.2006 Где: Дол Гулдур Репутация: 167 Всего: 306 |
||||
|
||||
| YanTsys |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 22.3.2006 Репутация: нет Всего: нет |
Твой код уже ищет слово в любом месте строки, пробелы и запятые не мешают |
|||
|
||||
| Данкинг |
|
|||
![]() Yersinia pestis ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 8302 Регистрация: 7.11.2006 Где: მოსკოვი Репутация: 11 Всего: 130 |
Ну да, просто для меня познания C++ ограничиваются Билдером.
Да, но я несколько не то имел в виду. Например, тебе нужно выделить какое-то слово, к примеру, пишешь фильтр мата. Если ты забьёшь соответствующее слово, то у тебя матерными будут считаться "подстрахуй", "Витебск", "рубля" и т.п. То есть тебе нужно искать не "х**", а " х** ", " х**," и тому подобное. Это сообщение отредактировал(а) Данкинг - 10.11.2008, 16:21 -------------------- There's nothing left but silent epitaphs. |
|||
|
||||
| YanTsys |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 77 Регистрация: 22.3.2006 Репутация: нет Всего: нет |
Ну тут уже человеку нужно например начиная с википедии изучить тему "синтаксический анализ" Особенно если речь идет о курсовой, то материал пригодится |
|||
|
||||
| Great Cornholio |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 19.6.2008 Репутация: 1 Всего: 1 |
ага, а если есть свич, то default
|
||||
|
|||||
| mrbrooks |
|
|||
![]() трололомен ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4259 Регистрация: 4.10.2006 Где: Дол Гулдур Репутация: 167 Всего: 306 |
Great Cornholio, ты что предлагаешь switch использовать для строк?
|
|||
|
||||
| Great Cornholio |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 19.6.2008 Репутация: 1 Всего: 1 |
впринципе судя по посту, к какому это обращёно, то да. А в чём проблема? (Хотя возможно я просто ламер
|
|||
|
||||
![]()
|
| Правила форума "С++ Builder" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C++ Builder | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |