В первом списке найти строки с текстом и перенести их во второй на С#, почему не работает?

zivillos

Пользователь
Регистрация
27.02.2018
Сообщения
77
Благодарностей
3
Баллы
8
var var_list2 = project.Lists["1"];
var resultlist2 = project.Lists["result"];

for(int i=0; i < var_list2.Count; i++)
{
var str2 = var_list2;

if (str2.Contains("@mail.ru"))
{
var_list2.RemoveAt(i);
resultlist2.Add(str2);
}

}
 
Регистрация
20.09.2015
Сообщения
33
Благодарностей
8
Баллы
8

zivillos

Пользователь
Регистрация
27.02.2018
Сообщения
77
Благодарностей
3
Баллы
8
не могу понять ...
 

Moadip

Client
Регистрация
26.09.2015
Сообщения
509
Благодарностей
824
Баллы
93
не могу понять ...
var var_list2 = project.Lists["1"];
var resultlist2 = project.Lists["result"];

for(int j=0; j < var_list2.Count; j++)
{
var str2 = var_list2[j];

if (str2.Contains("@mail.ru"))
{
var_list2.RemoveAt(j);
resultlist2.Add(str2);
}

}

Что конкретно не работает? Ошибка? Индекс не потерян?
Поменял переменную на j, тк парсер bbcode воспринимает i в квадратных скобках как наклонный шрифт

Можно сделать короче
C#:
var whatFind = "@mail.ru";
var list = new List<string>() {"naofnoaif", "[email protected]", "fanfoaf"};

var result = list.Where(s => s.Contains(whatFind)).ToList(); // ищем совпадения
list = list.Except(result).ToList(); // удаляем совпадения из входного списка
 

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