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

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

19.05.2011, 03:04. Показов 9946. Ответов 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, 18:52
Студворк — интернет-сервис помощи студентам
по тем ссылкам, что я привел, есть все, чтобы решить задачу - поиск слова, находящегося в списке, последующая с ним работа и т.д., но человек упорно ждет код для копипейста
0
1 / 1 / 1
Регистрация: 01.03.2011
Сообщений: 89
19.05.2011, 20:27  [ТС]
Цитата Сообщение от LK Посмотреть сообщение
по тем ссылкам, что я привел, есть все, чтобы решить задачу - поиск слова, находящегося в списке, последующая с ним работа и т.д., но человек упорно ждет код для копипейста
пробовал, жду помощи а не копипейста))
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
19.05.2011, 20:32
Цитата Сообщение от ruslan_smirnov Посмотреть сообщение
пробовал
не есть информативное сообщение, покажите народу "пробы" с коментариями, цитированием возможных полученых ошибок и описанием того, что не получается
0
1 / 1 / 1
Регистрация: 01.03.2011
Сообщений: 89
19.05.2011, 20:36  [ТС]
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.Trim().Pos(Edit1->Text)-1;
         RichEdit1->SelLength=Edit1->Text.Length()+1;
        }
  else ShowMessage("Не найдено!");
}
ищет прекрасно, но выводит истину даже если введем в едит "123" а в ричедит текст "123456789"

суть задачи - найти целое слово, чего добиться не могу
0
145 / 100 / 6
Регистрация: 11.03.2010
Сообщений: 477
20.05.2011, 17:04
я тут на досуге подумал, потом еще раз подумал.. .а потом напился пива и меня осенило.
что все то что я писал тут, работать будет, но результат будет что и в первом моем посте..

а нужно делать по другому

разбивать текст по словам( в каждой строчке отдельное слово) и сравнивать строки в ричедите, со строкой в эдите.

Добавлено через 3 часа 45 минут
супер поиск, копирайт за мной!

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
void __fastcall TForm3::Button1Click(TObject *Sender)
{
TStringList *list = new TStringList;
list->Delimiter = ' ';
list->DelimitedText = RichEdit1->Text;
 
for (int i = 0; i < list->Count; i++)
{
    if (list->Strings[i].LowerCase() == Edit1->Text.LowerCase()) {
       Memo1->Lines->Add(list->Strings[i]);
    }
}
}
на форму надо чтобы были:
C++
1
2
3
4
TEdit *Edit1;
TRichEdit *RichEdit1;
TButton *Button1;
TMemo *Memo1;
0
1 / 1 / 1
Регистрация: 01.03.2011
Сообщений: 89
20.05.2011, 18:01  [ТС]
сейчас попробую!спасибо!
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
20.05.2011, 18:02
против копирайта возражений нет, но...
вот этот текст у меня в Эдите , каков будет результат ?
0
145 / 100 / 6
Регистрация: 11.03.2010
Сообщений: 477
20.05.2011, 18:05
ну тут поиск скорее пословам, а не по тексту целиком...
1
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
20.05.2011, 18:08
самое простое, по словам:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
void __fastcall TForm1::Button1Click(TObject *Sender)
{
  AnsiString word = "int";
  int int_pos;
  AnsiString text=RichEdit->Text;
  while(text.Pos(word)) {
    int_pos = text.Pos(word);
    RichEdit->SelStart=int_pos-1;
    RichEdit->SelLength=word.Length();
    RichEdit->SelAttributes->Color=clRed;
    text[int_pos]='0';
 }
}
в прочем, про это уже было, ТС даже не обратил внимания .
0
8 / 8 / 0
Регистрация: 14.10.2011
Сообщений: 118
06.03.2012, 03:47
LK извините, а как с вашего кода понять куда ввести искаимое слово
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
06.03.2012, 03:52
mixe, например так:
C++
1
AnsiString word = Edit1->Text;
0
8 / 8 / 0
Регистрация: 14.10.2011
Сообщений: 118
06.03.2012, 04:08
да оч важно. я с помощью FindDialog сделал, нормально но хочеться сделать, что бы программа была на украинском или на других языках , не важно. и текст выделялся каким то другим цветом
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
06.03.2012, 04:14
Цитата Сообщение от mixe Посмотреть сообщение
1. хочеться сделать, что бы программа была на украинском или на других языках
2. текст выделялся каким то другим цветом
1. Имеется ввиду интерфес программы, или что?
3. Выделить красным:
C++
1
RichEdit1->SelAttributes->Color=clRed;
1
8 / 8 / 0
Регистрация: 14.10.2011
Сообщений: 118
06.03.2012, 04:16
пишет ошибку
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
06.03.2012, 04:16
Пишите ошибку сюды.
0
8 / 8 / 0
Регистрация: 14.10.2011
Сообщений: 118
06.03.2012, 04:17
C++
1
2
3
4
5
6
7
8
9
10
11
12
AnsiString text=RichEdit->Text;
AnsiString word = "int";
  int int_pos;
  AnsiString word = Edit1->Text;
 //
  while(text.Pos(word)) {
    int_pos = text.Pos(word);
    RichEdit->SelStart=int_pos-1;
    RichEdit->SelLength=word.Length();
    RichEdit->SelAttributes->Color=clRed;
    text[int_pos]='0';
 }
или я не так сделал, что скорее всего
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
06.03.2012, 04:20
Для начала закомментируйте эту строку так:
C++
1
// AnsiString word = "int";
1
8 / 8 / 0
Регистрация: 14.10.2011
Сообщений: 118
06.03.2012, 04:30
о точно, спасибо , а как убрть выделение при клике по нем иил как нибудь
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
06.03.2012, 04:33
C++
1
2
RichEdit1->SelStart = -1;
RichEdit1->SelAttributes->Assign(RichEdit1->DefAttributes);
1
8 / 8 / 0
Регистрация: 14.10.2011
Сообщений: 118
06.03.2012, 04:55
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
  int int_pos;
  AnsiString word = Edit1->Text;
 //
  while(text.Pos(word)) {
    int_pos = text.Pos(word);
    RichEdit->SelStart=int_pos-1;
    RichEdit->SelLength=word.Length();
    RichEdit->SelAttributes->Color=clRed;
    text[int_pos]='0';
    RichEdit->SelStart = -1;
RichEdit->SelAttributes->Assign(RichEdit->DefAttributes);
 
 
 }
так должно быть . последняя ваша пощь по этому вопросу и я утихаю. Простите делетанта за беспокойство

Добавлено через 13 минут
перепробывал, все, что думал не получеться(((((
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.03.2012, 04:55
Помогаю со студенческими работами здесь

Поиск слов в 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...


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru