جستجو محتویات سه لیست رشته ای در یک لیست رشته ای.
سلام.
چهار تا لیست رشته ای دارم.لیست اولی نام تمام پرسنل می باشد. در سه لیست دیگر از همین افراد وجود دارد. میخوام افرادی رو که در سه لیست دیگه قرار دارن از لیست اصلی کم کنم.به عبارتی دیگه افرادی رو که فقط در لیست اول هستن و در لیستهای دیگه نیستن رو جداگانه بنویسم. ممنون
نقل قول: جستجو محتویات سه لیست رشته ای در یک لیست رشته ای.
سلام
ی foreach واسه پیمایش لیست اول میذاری و داخل اون ۳ تا foreach واسه پیمایش۳ تا لیست دیگه میذاری! داخل این ۳ تا foreach با استفاده از یه if چک کن اگه برابری میکرد با آیتم foreach پدر، اون رو حذف کن
نقل قول: جستجو محتویات سه لیست رشته ای در یک لیست رشته ای.
List< string > s1 = new List<string>( ) {"a", "b", "c"};
List< string > s2 = new List<string>( ) {"p","wq", "a", "b", "c", "f", "g"};
List< string > s3 = new List<string>( ) {"q", "yt", "a", "b", "c", "pp"};
List<string> s4 = new List<string>() {"ewq", "q", "yt", "a", "b", "c", "pp" ,"oi"};
;
List<string> s5 = new List<string>();//آیتم های که وجود دارند
List<string> s6 = new List<string>();//ایتم های که وجود ندارند
foreach (string item2 in s2)
{
if (s1.Contains(item2))
{
s5.Add(item2 );
}
else if (!s1.Contains(item2))
{
s6.Add(item2);
}
}
foreach (string item3 in s3)
{
if (s1.Contains(item3))
{
s5.Add(item3);
}
else if (!s1.Contains(item3))
{
s6.Add(item3);
}
}
foreach (string item4 in s4)
{
if (s1.Contains(item4))
{
s5.Add(item4);
}
else if (!s1.Contains(item4))
{
s6.Add(item4);
}
}
//نمایش آیتم های که وجود دارند در لیست باکس
foreach (string item in s5)
{
lst1.Items.Add(item);
}
//نمایش آیتم های که وجود ندارند در لیست باکس
foreach (string item in s6)
{
lst2.Items.Add(item);
}
نقل قول: جستجو محتویات سه لیست رشته ای در یک لیست رشته ای.
با سلام.
var result = list1.Except(list2).Except(list3).Except(list4).To List();
//or
result = list1.Where(i => !list2.Contains(i) && !list3.Contains(i) && !list4.Contains(i)).ToList();
نقل قول: جستجو محتویات سه لیست رشته ای در یک لیست رشته ای.
ممنون از پاسختون.
نمیدونم یه تاپیک دیگه بزنم یا نه؟
توی همین لیستها میشه بر اساس ایندکس ، رشته مورد نظر رو خارج کرد؟ من که هرچی توی متدهاش گشتم پیدا نکردم.مثلا عدد6 رو بدم رشته متناظر این عدد رو بده.
نقل قول: جستجو محتویات سه لیست رشته ای در یک لیست رشته ای.
اگه قوانین رو کامل خونده باشی متوجه میشی که الان باید یه تایپیک جدید بزنی!!:چشمک::چشمک::چشمک:
نقل قول: جستجو محتویات سه لیست رشته ای در یک لیست رشته ای.
خواهش می کنم.
اگر با استفاده از متود ToList و یا ToArray حاصل را به آرایه و یا لیست تبدیل کنید مشکلی نخواهید داشت.
در هر صورت متود ElementAt جواب شماست.