전체 글(195)
-
[VB.NET] LINQ를 이용해서 리스트(List)의 중복 제거
List의 LINQ를 이용하면 정말 다양한 작업을 할 수 있는데, 이번 시간에는 중복제거에 대해 알아보도록 하자.상황별로 조금씩 다른 방법을 사용해야 하니 우선 가상의 상황을 만들어보고 그 상황에 맞게 처리해보도록 하자. 1. 현재 리스트에서 중복된 항목 제거아래 코드처럼 리스트 안에 동일한 항목이 있을때 중복을 제거하는 기능이다.Dim FirstList As New List(Of String)({"banana", "apple", "banana"})Dim ResultList As List(Of String) = FirstList.Distinct().ToList() 이렇게 사용하면, ResultList에 중복항목인 "banana"를 하나 없애고, "banana", "apple"의 2개의 항목만 남게 된다...
2024.08.24 -
[VB.NET] 문자열에서 원하는 내용 찾아내기 - 정규 표현식
VB.NET에는 예전에 없던 아주 강력한 기능이 많이 생겼는데 그중 하나가 정규 표현식이다. 정규 표현식은 텍스트를 검색하고 조작할때 사용할 수 있는 아주 강력한 기능을 제공하는데, 오늘은 이 정규표현식을 이용해서 문자열에서 특정 형식의 문자열을 찾아서 반환하는 함수를 만들어보려고 한다. 이 함수는 고객 응대 게시판과 같이 일반 고객들이 직접 입력하는 내용에서 내가 원하는 패턴의 문자열을 뽑아내는 등의 기능을 사용할 때 아주 유용하게 사용할 수 있다. 예를 들어서, 자동차 부품을 판매하는 쇼핑몰을 운영하는데, 항상 고객에게 차량번호를 받아야 한다고 가정해보자. 차량 번호는 123가4567 형식으로 입력된다고 가정했을때, 고객 개개인이 입력하는 게시판이다보니 형식도 제각각일 것이다. 아래 고객이 입력한 몇..
2024.07.12 -
[VB.NET] OrElse 연산자가 뭐지? 첨보네
VB.NET은 이전 VB에 비해서 정말 많은 기능이 추가됐는데 OrElse도 그중 하나이다. 이게 처음에는 있다는 사실 자체를 몰라서 못쓰지만, 알게 되면 아주 유용한 연산자이니 OrElse를 사용하는 이유를 이번에 제대로 알아보도록 하자. 연산자 하나를 설명하는 포스팅이라 내용이 간단하니 부담없이 확인해보도록 하자. 아래 두개의 If문을 확인해보자. Dim val1, val2, val3 As Boolean val1 = True : val2 = False : val3 = False If val1 = True Or val2 = True Or val3 = True Then MsgBox("True") End If If val1 = True OrElse val2 = True OrElse val3 = True T..
2024.04.12 -
VB.NET WPF에서 리본 툴바 만드는 진짜 방법
MS-Office에서 사용되는 리본은 예쁜 모양과 편리함으로 인해 여러 분야에서 다양하게 사용되는 컨트롤 중 하나이다. 이 리본 컨트롤을 WPF에서는 기본 제공하니 이번 시간에는 WPF에서 리본 툴바 만드는 방법에 대해 알아보도록 하자. 차근차근 따라서 다 만들면 아래 이미지와 같은 화면이 나오게 된다. 1. 프로젝트 생성 이번 강좌는 Visual Studio 2022 Community로 생성됐으며 새 프로젝트 만들기에서 아래 그림처럼 반드시 "WPF 앱(.NET Framework)"를 선택해야 한다. 그 위에 있는 "WPF 애플리케이션"을 선택하면 안되니 주의하도록 하자. 이유는 .NET Framework 4.8.1을 사용해야 하기 때문이다. 2. 참조 추가 참조 관리자 > 어셈블리 > System.W..
2024.03.15 -
VB.NET 금액에 천원 단위 콤마 넣는 신박한 방법
금액을 표기할때는 일반적으로 천원 단위로 콤마를 넣어서 표기하게 된다. 금액뿐만 아니라 숫자가 천단위보다 클 경우에는 가독성을 위해서 콤마를 사용하는게 여러모로 좋다. 오늘은 이를 위해 VB.NET에서 어떤 기능을 지원하는지 하나씩 차근차근 알아보기로 하자. 간략한 예제를 위해 아래 두개의 변수를 선언하자. Dim Val1 As Long = 100000, Val2 As Long = 30000000 Val1은 십만, Val2는 삼천만을 넣었다. 이 예제에서 구하는 최종 결과는 "Val1 = 100,000, Val2 = 30,000,000"로 아래 3가지 방법 모두 동일한 결과를 도출하게 된다. 1. String.Format() Dim Format1 As String = String.Format("Val1 ..
2024.03.12 -
VB.NET XML 파싱 - XmlDocument 사용
VB.NET HTML 파싱 - XPath를 사용한 HtmlAgilityPack 예제 VB.NET으로 HTML을 파싱하기 위해 예전에는 InStr, Mid, Left 등을 이용해서 하나하나 위치 잡아서 값을 가져왔던 기억이 나는데, 이제는 그럴 필요가 없다. 물론 예전 방식으로 작업해도 동작에 무리가 chakhani.tistory.com 지난 시간 HTML 파싱에 이어 이번 시간에는 XML 파싱에 대해 알아보자. XML 파싱은 VB.NET에서 기본 제공하는 기능이라 NuGet 패키지를 별도로 설치할 필요는 없다. 예제를 설명하기 위해 아이디, 이름, 점수를 나타내는 간략한 XML 문서를 하나 만들자. user1 홍길동 80 user2 이순신 90 user3 김철수 100 이제 위 XML 문서를 파싱해보자...
2024.02.21