[C# 문법] C# Linq Where 구문 AND / OR 조건 추가하는 방법
- C#/C# 문법
- 2020. 3. 9. 00:00
안녕하세요.
오늘은 C# 문법에서 Linq에 대해서 알려드리려고 합니다.
그 중에서도, Where 구문 사용시 OR 조건 추가하는 방법에 대해서 말씀드리려고 하는데요.
AND, OR 조건은 다들 아실거라 생각합니다.
AND 조건은 A 와 B 모두 참인 경우 성림, OR 조건은 A 와 B 둘 중 하나라도 참 인 경우 성립되는 건데요.
Linq를 이용하여 Where 조건을 이용하여 AND, OR 조건을 어떻게 표현하는지 보여드리도록 하겠습니다.
바로 예제 코드를 통해서 어떻게 Linq Where 구문을 이용해 AND, OR 구문을 추가 하는지 보여드리도록 하겠습니다.
예제 코드
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;
namespace LinqTest { class Program { static void Main(string[] args) { List<string> list = new List<string>();
list.Add("1.jpg"); list.Add("1.png"); list.Add("2.jpg"); list.Add("2.png"); list.Add("12.jpg"); list.Add("12.png");
List<string> myList = new List<string>();
// AND조건 1, 2 문자 모두 포함한 List만 저장 myList = list.Where(x => x.IndexOf("1", StringComparison.OrdinalIgnoreCase) >= 0 && x.IndexOf("2", StringComparison.OrdinalIgnoreCase) >= 0) .Select(x => x).ToList();
Console.WriteLine("--------------- AND 조건 조회 결과 ---------------"); for(int idx = 0; idx < myList.Count; idx++) { Console.WriteLine("{0}", myList[idx].ToString()); }
myList.Clear();
// OR 조건 1, 2 문자 포함한 List만 저장 myList = list.Where(x => x.IndexOf("1", StringComparison.OrdinalIgnoreCase) >= 0 || x.IndexOf("2", StringComparison.OrdinalIgnoreCase) >= 0) .Select(x => x).ToList();
Console.WriteLine("--------------- OR 조건 조회 결과 ---------------"); for (int idx = 0; idx < myList.Count; idx++) { Console.WriteLine("{0}", myList[idx].ToString()); }
} } }
|
실행 결과
위와 같이 값들이 출력되는 것을 확인하실 수 있습니다.
감사합니다.^^
'C# > C# 문법' 카테고리의 다른 글
[C# 문법] C# DataTable 데이터 값 변경하는 방법 (0) | 2020.04.24 |
---|---|
[C# 문법] C# DataTable 특정 컬럼 기준 정렬하기 (0) | 2020.04.23 |
[C# 문법] C# 튜플(Tuple) 사용하기 (0) | 2020.03.07 |
[C# 문법] PictureBox 컨트롤 이용하여 이미지(Image) 넣는 방법 (0) | 2020.02.28 |
[C# 문법] FolderBrowserDialog 이용하여 폴더 선택 및 정보 가져오기 (0) | 2020.02.27 |
이 글을 공유하기