Найти нужно значение в списке

Шива

Client
Регистрация
05.02.2018
Сообщения
1 089
Благодарностей
341
Баллы
83
Есть список
ОВОЩИ;огурцы;кабачки;брюква;федор емельяненко;неманго
ФРУКТЫ;апельсин;ананас;манго;
Во входной переменной имеется манго
Как найти именно манго и взять в переменную именно ФРУКТЫ
Желательно на C#
 

Mikhail B.

Client
Регистрация
23.12.2014
Сообщения
14 453
Благодарностей
5 472
Баллы
113

Обращаем Ваше внимание на то, что данный пользователь заблокирован.
Не рекомендуем проводить с Mikhail B. какие-либо сделки.

На кубах вобще не проблема, если надо будет пиши)
 

kagorec

Client
Регистрация
24.08.2013
Сообщения
1 036
Благодарностей
559
Баллы
113

inotoxic

Client
Регистрация
20.04.2015
Сообщения
354
Благодарностей
164
Баллы
43
Код:
var textToSearch = project.Variables["textToSearch"].Value; //Переменная с словом для поиска
var sourceList = project.Lists["list"];//список в котором ищем
for(int i=0; i < sourceList.Count; i++)
    {
        var str = sourceList[i];
        string[] words = new string []{str};
            words = str.Split(';');
            for (int j = 0;  j< words.Length; j++)
                {
                    var s = words[j];
                     if (s==textToSearch)
                    project.Variables["str"].Value = str;//В перменную "str" - вернется строка вхождения из списка
                }               
    }
 
  • Спасибо
Реакции: Rimen и Шива

Шива

Client
Регистрация
05.02.2018
Сообщения
1 089
Благодарностей
341
Баллы
83
Код:
var textToSearch = project.Variables["textToSearch"].Value; //Переменная с словом для поиска
var sourceList = project.Lists["list"];//список в котором ищем
for(int i=0; i < sourceList.Count; i++)
    {
        var str = sourceList[i];
        string[] words = new string []{str};
            words = str.Split(';');
            for (int j = 0;  j< words.Length; j++)
                {
                    var s = words[j];
                     if (s==textToSearch)
                    project.Variables["str"].Value = str;//В перменную "str" - вернется строка вхождения из списка
                }             
    }
А как сделать так что бы переменная textToSearch бралась из списка ?
То есть мы один список натравливаем на другой а в третий список писалось такое
ОВОЩИ;брюква
И так пока весь список входной не кончится.
Список в котором ищем постоянный
 

inotoxic

Client
Регистрация
20.04.2015
Сообщения
354
Благодарностей
164
Баллы
43
А как сделать так что бы переменная textToSearch бралась из списка ?
Код:
var listSearch = project.Lists["list"];//список с поисковыми словами, (каждое слово с новой строки)
var sourceList = project.Lists["list2"];//список в котором ищем
var destlist = project.Lists["list3"];//список в который возвращаем найденные строки из списка "sourceList"

for(int z=0; z < listSearch.Count; z++)
{
var strsearch = listSearch[z];
for(int i=0; i < sourceList.Count; i++)
    {
        var str = sourceList[i];
        string[] words = new string []{str};
            words = str.Split(';');
            for (int j = 0;  j< words.Length; j++)
                {
                    var s = words[j];
                     if (s==strsearch)
                    destlist.Add(str);//добавляем найденную строку в список
                }             
    }   
}
 
  • Спасибо
Реакции: Шива

ssXXXss

Client
Регистрация
23.12.2014
Сообщения
7 375
Благодарностей
2 042
Баллы
113
C#:
var list_1 = project.Lists["LIST_1"];//список с поисковыми словами
var list_2 = project.Lists["LIST_2"];//список в котором ищем

for (int i1 = 0; i1 < list_1.Count; i1++)
{
    var str = list_1[i1];
    for (int i2 = 0; i2 < list_2.Count; i2++)
    {
        var words = list_2[i2].Split(';');
        if (words.Contains(str))
        {
            FileSystem.FileAppendString(project.Directory + "\\Result.txt", words[0] + ";" + str, true);
        }
    }           
}
 
  • Спасибо
Реакции: Шива

Шива

Client
Регистрация
05.02.2018
Сообщения
1 089
Благодарностей
341
Баллы
83
C#:
var list_1 = project.Lists["LIST_1"];//список с поисковыми словами
var list_2 = project.Lists["LIST_2"];//список в котором ищем

for (int i1 = 0; i1 < list_1.Count; i1++)
{
    var str = list_1[i1];
    for (int i2 = 0; i2 < list_2.Count; i2++)
    {
        var words = list_2[i2].Split(';');
        if (words.Contains(str))
        {
            FileSystem.FileAppendString(project.Directory + "\\Result.txt", words[0] + ";" + str, true);
        }
    }          
}
А как сделать так что бы при нахождении искомого слова бралось уже следующее значение?
 

inotoxic

Client
Регистрация
20.04.2015
Сообщения
354
Благодарностей
164
Баллы
43
А как сделать так что бы при нахождении искомого слова бралось уже следующее значение?
А этот код разве не так работает?
В цикле перебирает слова из первого списка во втором и при нахождении сохраняет в - Result.txt
 

Шива

Client
Регистрация
05.02.2018
Сообщения
1 089
Благодарностей
341
Баллы
83
А этот код разве не так работает?
В цикле перебирает слова из первого списка во втором и при нахождении сохраняет в - Result.txt
Он идет дальше проверять по нему.
А хотелось что бы когда нашло брало следущее слово.
 

ssXXXss

Client
Регистрация
23.12.2014
Сообщения
7 375
Благодарностей
2 042
Баллы
113
  • Спасибо
Реакции: Шива

Rimen

Client
Регистрация
28.10.2019
Сообщения
406
Благодарностей
255
Баллы
63
Код:
var textToSearch = project.Variables["textToSearch"].Value; //Переменная с словом для поиска
var sourceList = project.Lists["list"];//список в котором ищем
for(int i=0; i < sourceList.Count; i++)
    {
        var str = sourceList[i];
        string[] words = new string []{str};
            words = str.Split(';');
            for (int j = 0;  j< words.Length; j++)
                {
                    var s = words[j];
                     if (s==textToSearch)
                    project.Variables["str"].Value = str;//В перменную "str" - вернется строка вхождения из списка
                }              
    }
Правильный рабочий код.
Спасибо автору!!!
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)