2012-06-28 22 views
7

से मान हैं दो सूचियां हैं शामिल न करें:सूची आइटम है कि एक और सूची

List<string> excluded = new List<string>() { ".pdf", ".jpg" }; 
List<string> dataset = new List<string>() {"valid string", "invalid string.pdf", "invalid string2.jpg","valid string 2.xml" }; 

मैं "डाटासेट" सूची जो "बहिष्कृत" सूची से किसी भी कीवर्ड होते से फ़िल्टर आउट कर सकते हैं कैसे मान?

+1

जैसा कि अभतिचेव कहते हैं, 'हैशसेट ' को छोड़कर, विशेष रूप से यदि यह बड़ा है। – Jodrell

+0

धन्यवाद। अगर हम हैशसेट्स पर हैं, तो मैं इस लिंक को इस विषय के चारों ओर एक अवरोध के लिए दूंगा: http://stackoverflow.com/questions/1247442/when-should-i-use-the-hashsett-type – lekso

उत्तर

6

प्रयास करें:

var result = from s in dataset 
      from e in excluded 
      where !s.Contains(e) 
      select e; 
0
var result=dataset.Where(x=>!excluded.Exists(y=>x.Contains(y))); 

यह भी काम करता है जब बाहर रखा सूची खाली है।

संबंधित मुद्दे