Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.04.2014, 23:28   #1
L6go1as
Форумчанин
 
Регистрация: 20.10.2011
Сообщений: 433
По умолчанию Частичное сравнение элементов массивов

Добрый день уважаемые.

Разбил строку на массив(получилось чуть больше 1500 строк):

Код:
Text.Split(new []{'\n', '\r'}, StringSplitOptions.RemoveEmptyEntries);
Есть массив - эталон, с которым провожу сравнение:

Код:
string[] arr_filtr = {"яблочки", "орешки", "мандаринчики"};
После всех преобразований, фильтруемый массив содержит элементы - строки:

Код:
string[] arr_str = {"яблочки", "яблочки_спелые", "орешки", "орешки_соленые", "мандаринчики_веселые"};
Сравнение провожу в "лоб":

Код:
for (int i = 0; i < arr_str ; i++)
            {
                if (arr_str[i] == arr_filtr[1])
                {
                    textBox1.Text += "работает" + Environment.NewLine;
                }
                else textBox1.Text += "не работает" + Environment.NewLine;
            }
Сравнение идет, но идет сравнение явное, т.е. "яблочки"(arr_str) с "яблочки"(arr_filtr) и т.д.

Увы, цель - сравнение явное + не явное. Т.е. на применение фильтра "яблочки" результатом были: "яблочки" и "яблочки_спелые".

Подскажите как такое реализовать, а то чет мозги уже вскипают )
L6go1as вне форума Ответить с цитированием
Старый 05.04.2014, 23:48   #2
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

string.IndexOf
eval вне форума Ответить с цитированием
Старый 06.04.2014, 16:38   #3
L6go1as
Форумчанин
 
Регистрация: 20.10.2011
Сообщений: 433
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
string.IndexOf
Пасиб, помогло!

Возможно ли проводить несколько проверок в одном цикле ?
L6go1as вне форума Ответить с цитированием
Старый 06.04.2014, 16:58   #4
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

чего ?
eval вне форума Ответить с цитированием
Старый 06.04.2014, 17:09   #5
L6go1as
Форумчанин
 
Регистрация: 20.10.2011
Сообщений: 433
По умолчанию

Цитата:
Сообщение от eval Посмотреть сообщение
чего ?
Кручу - верчу, запутать хочу!

Код:
foreach (string search in Globals.arr_buffer)
            {
                int j = 0;
                for (int i = 0; i < Globals.arr_filter_basic.Length; i++)
                {
                    j = search.IndexOf(Globals.arr_filter_basic[i]);
                    
                    if (j == 0)
                    {
                        Globals.buffer += search + Environment.NewLine;
                    }
                }
            }
Выводит все как надо, но есть и не нужная инфа. От ее я пытаюсь избавиться следующим циклом:

Код:
for (int i = 0; i < Globals.arr_buffer.Length; i++)
            {
                for (int j = 0; j < Globals.arr_filter_adv.Length; j++)
                {
                    if (Globals.arr_buffer[i] == Globals.arr_filter_adv[j])
                    {
                        Globals.arr_buffer[i] = "";
                    }
                }
            }
Т.е затираю ненужные строки, что бы потом их и удалить.

Проблема в том, что первый код получает строку, которую я опять бью сплитом и превращаю в массив и уже к этому массиву применяю второй код.

Получается много кода который дублируется (например split) ... возможно ли все как ни будь одним махом все решить без лишнего кода ?
L6go1as вне форума Ответить с цитированием
Старый 06.04.2014, 19:49   #6
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,881
По умолчанию

Покажите пример входных данных, твой код который даёт лишнюю информацию (чем конкретнее и меньше кусок - тем лучше), получаемые выходные данные (из заданных входных и данного алгоритма) и то, что Вы бы хотели увидеть в итоговых выходных данных.
phomm вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Частичное сравнение и замена при совпадении ZombieBoy Microsoft Office Excel 9 05.04.2013 16:47
Сравнение двух неравных (по количеству элементов) массивов (JavaScript)) maksimka2112 Помощь студентам 2 07.08.2012 21:04
сравнение массивов Gang182 Помощь студентам 7 29.09.2011 10:31
Delphi, сравнение массивов, умножение массивов Marjasja Помощь студентам 0 22.05.2011 19:59
Delphi, сравнение массивов, умножение массивов Marjasja Общие вопросы Delphi 0 22.05.2011 19:49