2017-12-15 12 views
1

linq를 사용하여 단어 단위로 배열을 검색 할 수 있습니까?단어로 2 차원 배열의 LINQ 검색

예 :

AA BB CC DD EE

BB CC DD EE FF

AA BB CC DD EE

:

내 배열처럼 보이는 첫 번째 열이 "AA"인 줄을 반환하고 싶습니다. 내가 먼저 열을 기준으로 내 배열을 정렬하는 LINQ를 사용하고

:

sorted = array.OrderBy(o => o[1]).ThenBy(t => t[1]).ToArray(); 

나는 Find an item in List by LINQ?

string search = "AA"; 

sorted = array.Single(s => s == search); 

같은 somethink을 만들려고하지만, 내가 사용하고 beacuse 나를 위해 작동하지 않습니다 2D 배열.

내가 좋아하는 배열을 반환하고 싶습니다 :

AA BB CC DD EE

AA BB CC DD EE

+0

배열은 어떻게 보이나요? – JohnyL

+1

string [] [] array = 새 문자열 [3] [5] {{AA, BB, CC, DD, EE}, {BB, CC, DD, EE, FF} , EE}}}; –

답변

1

트릭 할 것입니다 간단한 where :

var result = array.Where(inner => inner.FirstOrDefault() == "AA"); 
+0

+ .ToArray() 끝에. 감사합니다 –

1

그런 시도해보십시오.

var newArray = array.Where(x => x.Length > 0 && x[0] == "AA").ToArray(); 

또한 인덱스 오류가 예기치 않게 발생하지 않도록 하위 배열 길이를 고려해야합니다.

+0

@ DesmondLee의 대답은 빈 하위 배열과 작동합니다. – JohnyL