Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.80/51: Рейтинг темы: голосов - 51, средняя оценка - 4.80
1 / 1 / 1
Регистрация: 01.03.2011
Сообщений: 89

Поиск слова в RichEdit

19.05.2011, 03:04. Показов 9916. Ответов 41
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как найти слово, например введенное в Edit?
спаисибо
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
19.05.2011, 03:04
Ответы с готовыми решениями:

Поиск в RichEdit
Здравствуйте! Нужна помощь вот в чем! Организовал поиск по RichEdit'у с выделением все четко! на форуме тем много! ...

Поиск в RichEdit
Здраствуйте!!! Вопрос в следущем: Хочу с одного RichEdit3 сверять текст с RichEdit2 при условии что он находиттса между Если ...

RichEdit поиск в строке
Поиск в строке RichEdit Есть три RichEdit1,..2,..3. В первом RichEdit1 считывает, в третьем находит похожий, выводит во второй. С...

41
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
19.05.2011, 04:13
C++
1
Edit->Text.Pos("слово")
0
1 / 1 / 1
Регистрация: 01.03.2011
Сообщений: 89
19.05.2011, 12:48  [ТС]
братишка, слово введенное в Едит нужно найти в RichEdit.
и главное не часть а целое
0
145 / 100 / 6
Регистрация: 11.03.2010
Сообщений: 477
19.05.2011, 13:00
Цитата Сообщение от ruslan_smirnov Посмотреть сообщение
братишка, слово введенное в Едит нужно найти в RichEdit.
и главное не часть а целое
полегче с выражениями

вам абсолютно верно указали как нужно искать слова, выражения и все прочее

C++
1
RichEdit1->Text.Pos(Edit1->Text);
после исполнения данного кода, указатель у вас будет находится на первой букве слова введенного в Едит1
1
1 / 1 / 1
Регистрация: 01.03.2011
Сообщений: 89
19.05.2011, 13:04  [ТС]
ок, сорри тогда, но к примеру выведит ли сообщение о нахождении или не нахождении данного слова?
0
145 / 100 / 6
Регистрация: 11.03.2010
Сообщений: 477
19.05.2011, 15:10
а потестить самому никак ?

Добавлено через 4 минуты
C++
1
2
3
4
5
6
7
8
9
10
11
12
void __fastcall TForm3::Button1Click(TObject *Sender)
{
  int found;
  found = 0;
  found = RichEdit1->Text.Pos(Edit1->Text);
  if (found > 0) {
    ShowMessage("Ta Ta  )) it works!!");
  }
  else {
    ShowMessage(" You lost some words... check again!! ");
  }
}
на нажатие кнопки поставь єтот код
2
1 / 1 / 1
Регистрация: 01.03.2011
Сообщений: 89
19.05.2011, 17:48  [ТС]
здесь он выдает истину даже если найдена часть слова!
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
19.05.2011, 17:56
Цитата Сообщение от ruslan_smirnov Посмотреть сообщение
здесь он выдает истину даже если найдена часть слова!
Цитата Сообщение от koldun
после исполнения данного кода, указатель у вас будет находится на первой букве слова введенного в Едит1
,а то, что вы хотите, надо делать, используя FindText().
0
1 / 1 / 1
Регистрация: 01.03.2011
Сообщений: 89
19.05.2011, 17:56  [ТС]
можно спросить как?это важно!
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
19.05.2011, 18:00
это вам важно
или так
Программа "Прямой поиск строки"
0
145 / 100 / 6
Регистрация: 11.03.2010
Сообщений: 477
19.05.2011, 18:01
надрать в ИДЕ
C++
1
RichEdit1->Text.
и нажми сонтрл+пробел

увидиш там все доступные команды, из них выбери то что нужно, и следуя подсказкам ИДЕ используй.
1
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
19.05.2011, 18:10
RichEdit форматирование и не только
Как найти и заменить текст в Memo или в txt-файле?
RichEdit

Добавлено через 1 минуту
Цитата Сообщение от koldun Посмотреть сообщение
и нажми сонтрл+пробел
если бы все было так просто...
0
1 / 1 / 1
Регистрация: 01.03.2011
Сообщений: 89
19.05.2011, 18:13  [ТС]
C++
1
2
3
4
5
6
7
8
9
void __fastcall TForm5::BitBtn1Click(TObject *Sender)
{
 if (Pos(Edit1->Text,RichEdit1->Text)!=0)
    {
     RichEdit1->SelStart = RichEdit1->Text.TrimRight().Pos(Edit1->Text)-1;
     RichEdit1->SelLength=Edit1->Text.Length()+1;
    }
  else ShowMessage("Не найдено!");
}
вот сделал по теме, но результат идентичный((

Добавлено через 1 минуту
хотелось бы обойтись без FindDialog
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
19.05.2011, 18:18
см. сообщение №6 - koldun дал тебе вполне рабочий код.

Добавлено через 1 минуту
C++
1
2
3
4
5
6
7
8
9
10
11
void __fastcall TForm5::BitBtn1Click(TObject *Sender)
{
  int i =  RichEdit1->Text.Pos(Edit1->Text);
  if (!=-1) {
    RichEdit1->SelStart = i;
    RichEdit1->SelLength = Edit1->Text.Length()+1;
    RichEdit1->SelAtrributes->Color << clRed;
// или RichEdit1->SelAtrributes->Color = clRed; // не помню
  }
  else ShowMessage("Не найдено!");
}
0
1 / 1 / 1
Регистрация: 01.03.2011
Сообщений: 89
19.05.2011, 18:21  [ТС]
тот код также ищет слово, но даже если ввести букву этого слова все равно истина

Добавлено через 2 минуты
Цитата Сообщение от LK Посмотреть сообщение
см. сообщение №6 - koldun дал тебе вполне рабочий код.

Добавлено через 1 минуту
C++
1
2
3
4
5
6
7
8
9
10
11
12
void __fastcall TForm5::BitBtn1Click(TObject *Sender)
{
 
 int i =  RichEdit1->Text.Pos(Edit1->Text);
 if (!=-1)
        {
         RichEdit1->SelStart = i;
         RichEdit1->SelLength = Edit1->Text.Length()+1;
         RichEdit1->SelAtrributes->Color << clRed;
        }
  else ShowMessage("Не найдено!");
}
if (!=-1)

[C++ Error] Unit5.cpp(115): E2188 Expression syntax

делаю if (i!=-1) не работает
0
145 / 100 / 6
Регистрация: 11.03.2010
Сообщений: 477
19.05.2011, 18:25
ruslan_smirnov,

Руслан, ну ты странный человек...

тоесть ты хочеш сказать, что если у меня в ричедите будет фраза "коля утром поглумился над светой"

а в эдите будет слово "надя"

то вот тот код что я привел всеравно покажет что такое слово найдено ???

ты что-то путаешь...
0
1 / 1 / 1
Регистрация: 01.03.2011
Сообщений: 89
19.05.2011, 18:27  [ТС]
Цитата Сообщение от koldun Посмотреть сообщение
ruslan_smirnov,

Руслан, ну ты странный человек...

тоесть ты хочеш сказать, что если у меня в ричедите будет фраза "коля утром поглумился над светой"

а в эдите будет слово "надя"

то вот тот код что я привел всеравно покажет что такое слово найдено ???

ты что-то путаешь...
соглашусь

к примеру если в едит я введу к примеру первые три буквы слова, то он его конечно найдет, но мне нужно слово целиком, так как оно связано с базой(
0
145 / 100 / 6
Регистрация: 11.03.2010
Сообщений: 477
19.05.2011, 18:31
код писать не буду, потому как в данный момент переустанавливаю ИДЕ

но натолкну на мысль:

тебе нужно получать длинну слова в эдите, находить(приведенным мною способом) точку нахождения данного выражения в ричэдите, вырезать фразу длинною в эдит1, помещать фразу в какойто стринг, и сравнивать 2 строчки, если совпали, ура, если нет, ищем дальше.
0
1 / 1 / 1
Регистрация: 01.03.2011
Сообщений: 89
19.05.2011, 18:32  [ТС]
подожду пока переустановишь
0
145 / 100 / 6
Регистрация: 11.03.2010
Сообщений: 477
19.05.2011, 18:36
попробуй пока сам сделать... я через пол часа ухожу домой, и помоч смогу тока завтра к 11 дня
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.05.2011, 18:36
Помогаю со студенческими работами здесь

Поиск слов в RichEdit
int found = 0; found =Form1-&gt;RichEdit1-&gt;Text.Pos(Form2-&gt;Edit1-&gt;Text); if (found &gt; 0) { ...

Цветные слова при нажатии на кнопку (RichEdit)
Не могу розобратса как добавти при нажатии на кнопку слово (например красного цвета). Добавлять строки я знаю как а вот как цветной текст...

RichEdit поиск и замена текста
Доброго времени суток. Мне нужно действовать по такому алгоритму: Если в RichEdit1 содержится текст :), то я заменяю этот текст на...

Как убрать из RichEdit все слова нечетной длины?
Есть два ричэдита.в один я считываю с файла, во второй ричэдит мне нужно записать то что я считал, без слов непарной длины. void...

RichEdit и FindText, поиск текста в обратном направлении
Как искать текст вперед я разобрался: if...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
1С: Программный отбор элементов справочника Номенклатура по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор под наименованию группы (на. . .
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
1С: Программный отбор элементов справочника Сотрудники по значению перечисления
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит предопределенное значение перечислений. Процедура. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru