Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/18: Рейтинг темы: голосов - 18, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 30.12.2012
Сообщений: 9

Выявить отличия в тексте двух TextBox и записать их в третий

30.12.2012, 02:05. Показов 3407. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброе время суток!:-)
Задача следующая: есть три текстбокса, содержимое первого и второго(оба должны быть текстовые) сравниваются и если есть повторяющиеся слова, то всё это добро показывается в 3-ем текстбоксе.
Сейчас показывает только последний элемент, а не весь массив. Как исправить?

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
namespace WindowsFormsApplication2
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
           string box1 = richTextBox1.Text;
           string [] splitBox1 = box1.Split(new Char[] { ',' }); // здесь задумка была разделить весь введёный текст на элементы массива
           string box2 = richTextBox2.Text;
           string[] splitBox2 = box2.Split(new Char[] { ',' });
           for (int i = 0; i < splitBox1.Length; i++)
           {
               for (int j = 0; j < splitBox2.Length; j++)
                   {
                   if (string.Equals(splitBox1[i],splitBox2[j],StringComparison.Ordinal ))
                       {
                           richTextBox3.Text = splitBox2[j]+" ";                      
                        }
                       else
                       {
                           richTextBox3.Text = "Совпадений нет.";
                       }
                   }
               }
           
           
           
           
           }
         
        }
    
}
PS. Попрошу сразу не пинать и не кричать "гори в аду злостный ламерюга", ибо:
1)Я пережил конец света 21.12.12
2)Я только начал изучать C# ;-)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.12.2012, 02:05
Ответы с готовыми решениями:

Результат умножения значений двух TextBox записать в третий
Подскажите пожалуйста, у меня есть 3 textBox, нужно первый и второй перемножить и даные записать в третий, как это сделать?

Сумму с двух textBox вывести в третий textBox после нажатия button
Добрый день. Перерыла кучю книг, ео ненашла банального примера. Мне нужно в windows form создать окно (ет лихко). В нем два textBox,...

Сложить значения двух TextBox и вывести в третий
У нас есть три textBox и кнопка botton. В textBox1 и textBox2 вводятся числа, при нажатии на botton в textBox3 выводит результат

11
Темная сторона .Net
 Аватар для Noob.net
592 / 489 / 39
Регистрация: 21.07.2012
Сообщений: 1,668
30.12.2012, 12:54
Цитата Сообщение от Nub-iara Посмотреть сообщение
richTextBox3.Text = splitBox2[j]+" "
Вот тут не хватает смайла-тролля)

C#
1
2
3
4
//А что делает такая вот конструкция?
richTextBox3.Text += splitBox2[j]+" "
//А что делает такая?
richTextBox3.Text = splitBox2[j]+" "
0
1 / 3 / 2
Регистрация: 30.12.2010
Сообщений: 45
30.12.2012, 16:28
если не поймешь предыдущий пост то попробуй так

C#
1
richTextBox3.Text = richTextBox3.Text + " " + splitBox2[j]
0
0 / 0 / 0
Регистрация: 30.12.2012
Сообщений: 9
03.01.2013, 02:34  [ТС]
Дядьки, спасибо за ответы. Попробывал, не помогло, думаю, что ошибся где-то в методе или логике.(( Пример того, как должно быть:
Всего 3 textbox'a
1)В textbox №1 записываем слова: eagle, deer, mouse, frog,
2)В textbox №2 записываем слова: deer, mouse, horse, beast
3)При нажатии на кнопку в textbox №3 появляются: deer, mouse,
Сейчас получается, что в 3-м текст-боксе появляется только последнее слово, при условии что оно стоит в конце списка слов 2-го текст-бокса

PS. С наступившим!
0
 Аватар для kodv
1449 / 1121 / 347
Регистрация: 11.04.2011
Сообщений: 2,621
03.01.2013, 07:56
Nub-iara, Используй при сравнении еще метод Trim, который обрезает пробелы слева и справа. Ибо " deer" и "deer" - это разные строки, а вот " mouse" и " mouse" - одинаковые.
0
0 / 0 / 0
Регистрация: 30.12.2012
Сообщений: 9
03.01.2013, 14:27  [ТС]
Попробовал записать без пробелов, результат тот же(
0
 Аватар для kodv
1449 / 1121 / 347
Регистрация: 11.04.2011
Сообщений: 2,621
03.01.2013, 15:20
Цитата Сообщение от Nub-iara Посмотреть сообщение
при условии что оно стоит в конце списка слов 2-го текст-бокса
А если не стоит, то что появляется?
0
0 / 0 / 0
Регистрация: 30.12.2012
Сообщений: 9
03.01.2013, 15:43  [ТС]
Цитата Сообщение от kodv Посмотреть сообщение
А если не стоит, то что появляется?
Допустим если взять слова из моего примера(deer,mouse,horse,beast), и скопировать в текст-бокс один и в текст-бокс два(то есть одно и тоже), то в третьем текст-боксе появляется только последнее слово beast. Если слова ставить с пробелами, то соответственно слово появляется с пробелом.
0
14 / 14 / 4
Регистрация: 31.12.2012
Сообщений: 71
03.01.2013, 18:26
Держи, будут ошибки пиши
Два ограничения: 1) Слова должны разделятся ","
2) Максимальное число одновременно сравниваемых слов не должно привишать числа 10, так как
C#
1
string[] mas2= new string[10];
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
        private void button1_Click(object sender, EventArgs e)
        {
            string s, s1;
            string[] mas;
            string[] mas1;
            string[] mas2= new string[10];
            int i, j,p=0;
            
            
            if ((tB1.Text != null) && (tB2.Text != null))// если тб1 и тб2 не = 0
            {
                tB3.Text = null;
 
                s = tB1.Text.Replace(" ","");//удаляем пробели
                s.ToLower();
                mas = s.Split(',');// разбивка
 
                s1 = tB2.Text.Replace(" ", "");
                s1.ToLower();
                mas1 = s1.Split(',');
 
                for (i = 0; i < mas.Length; i++)
                {
                    for (j = 0; j < mas1.Length; j++)
                    {
                        if (mas[i] == mas1[j])
                        {
                            mas2[p] = mas[i];
                            p++;
                        }
                    }
                }
 
                foreach (string s2 in mas2)
                {
                    if (s2 != null)
                        tB3.Text += s2 + "\r\n";
                }
            }    
        }
1
0 / 0 / 0
Регистрация: 30.12.2012
Сообщений: 9
03.01.2013, 19:28  [ТС]
Спасибо дядь, всё работает!) Да снизойдёт хорошая карма на твою светлую голову)))
0
 Аватар для kodv
1449 / 1121 / 347
Регистрация: 11.04.2011
Сообщений: 2,621
03.01.2013, 19:49
Nub-iara, Чувствуется мне, что вы в своей программе не воспользовались рекомендациями Noob.net и wolfinil. Соответственно, у вас в текстбоксе каждое новое совпадение затирало предыдущее. Я и спросил, что выводится, если у вас последнее слово во втором текстбоксе ни с чем не совпадает, чтобы выяснить этот момент окончательно. В соответствии с вышенаписанным, должна была выдаваться надпись о том, что совпадений не найдено. Пример Lirik5 рабочий, надеюсь, что вы разберетесь что и как в нем работает, чтобы адаптировать его при необходимости под себя. Ибо. допустим, при наличие более 10 совпадений, данный код выдаст ошибку.
1
0 / 0 / 0
Регистрация: 30.12.2012
Сообщений: 9
20.01.2013, 23:43  [ТС]
Только сейчас заметил, что ни в одной из версий программ метод ToLower()(то есть результатом сравнения qwerty и Qwerty является пустое окно) не работает корректно. В моёй программе фрагмент этого кода выглядит так:
C#
1
2
3
4
5
6
 ...
richTextBox3.Text = null;
                string box1 = richTextBox1.Text;
                box1.ToLower();
                string[] splitBox1 = box1.Split(new Char[] { ',' });
...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
20.01.2013, 23:43
Помогаю со студенческими работами здесь

Сравнение двух TextBox'ов с записью в третий
Подскажите, пожалуйста! У меня есть ТРИ TextBox - в одном написано &quot;мама и папа&quot;, а во втором &quot;папа&quot;. Как сравнить эти два...

Сравнение строк в двух TextBox с выводом результата в третий
Сравниваем строки в TextBox, еси нет строки одинаковой из TextBox1 в TextBox2, то эту строку из TextBox1 копируем в TextBox3. Сделал код...

Различия двух файлов записать в третий
Есть 2 текстовых файла (1.txt , 2.txt) 1.txt: C:\Assch C:\boot.ini C:\CONFIG.SYS 2.txt: C:\Assch C:\AUTOEXEC.BAT

Записать разницу двух листов в третий
Здравствуйте, вот у меня есть 2 ArrayList. Как записать в третий лист, элементы второго листа которых нет в первом листе. ...

Записать элементы двух массивов в третий
Т.е нужно записать элементы массивов G и P в массив V (не складывая элементы с друг другом),пробовал с помощью пары циклов,но последние 5...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 30.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
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. В качестве источника данных. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru