2012-04-25 3 views
30

У меня есть два массива:Пересечения два массива строк (без учета регистра)

string[] array1 = { "Red", "blue", "green", "black" }; 
string[] array2 = { "BlUe", "yellow", "black" }; 

нужны только совпадающие строки в одном массиве (без учета регистра).

Результат должен быть:

string[] result = { "blue", "black" } or { "BlUe", "black" }; 

ответ

65

Как насчет Enumerable.Intersect и StringComparer комбо:

// other options include StringComparer.CurrentCultureIgnoreCase 
// or StringComparer.InvariantCultureIgnoreCase 
var results = array1.Intersect(array2, StringComparer.OrdinalIgnoreCase); 
+0

Очень чистый спасибо. – Gareth

Смежные вопросы