Как Сравнить два списка?

  • Автор темы Автор темы atheroth
  • Дата начала Дата начала

atheroth

Client
Регистрация
06.06.2014
Сообщения
130
Реакции
17
Баллы
18
Привет всем. Уже часа 3 ломаю голову. Может зенкой можно решить такую задачу.

В общем, есть два списка. Нужно сравнить их и удалить только УНИКАЛЬНЫЕ значения. Значения текстовые.

Ексель можно удалить только дубли. А мне наоборот нужно. Помогите плиз :)
 
Или если можно с 1 списка. Я сделаю все в один список, и удалить только уникальные.
 
Сейчас затестим))) Огромное спасибо_
 
var list1 = project.Lists["list1"];//список 1
var list2 = project.Lists["list2"];//список 2
var list3 = project.Lists["list3"];//выходной список
list3.Clear();
list1.Except(list2).Concat(list2.Except(list1)).ToList().ForEach(s=>list3.Add(s));
return string.Join(", ", list3.ToArray());//смотрим что получилось
 
  • Спасибо
Реакции: dio-dev и sentinel
Подскажите, как положить в выходной список не уникальные строки, а дубли?
 
  • Спасибо
Реакции: canroy
Сложи два списка в один.
не совсем то что мне нужно было, если кому вдруг нужно будет то вот сниппет которым решил трабл
Код:
Развернуть Свернуть Копировать
var list1 = project.Lists["список1"];
var list2 = project.Lists["список2"];
var list3 = list1.Intersect(list2);
project.Lists["дубли между двумя списками выше"].AddRange(list3);
 
Надстройка PLEX для Excel как вариант.
 
поясню изначально что планировалось, zp пишет только тем кому он ещё не писал, поэтому в одну переменную берём имя того кому пишем, а в другую список кому уже писали, и как то надо сравнить эти две переменные, что бы понять отправлялось ли сообщение этому idname или еще нет.
 
не совсем то что мне нужно было, если кому вдруг нужно будет то вот сниппет которым решил трабл
Код:
Развернуть Свернуть Копировать
var list1 = project.Lists["список1"];
var list2 = project.Lists["список2"];
var list3 = list1.Intersect(list2);
project.Lists["дубли между двумя списками выше"].AddRange(list3);
Полезный код... но нашлась задачка которую не покрывает:
• есть чистый чистый список (список 3)
• есть список (список 1) с данными типа ключ: частотность. Пример строки выглядит так: купить холодильник: 41131
• есть второй список (список 2) который содержит только ключ (без частотности). т.е. строка будет иметь вид купить холодильник

Задача: необходимо сравнить список 1 и список 2, и когда ключ совпадает -- положить всю строку из список 1 в список 3 (с частотностью, вида купить холодильник: 41131)
 

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