소개
정규표현식(Regular Expression)은 문자열에서 특정한 패턴을 찾거나, 특정한 패턴으로 문자열을 대체할 때 사용하는 표현식입니다. C#에서는 System.Text.RegularExpressions 네임스페이스를 통해 정규표현식을 지원합니다. 이번 글에서는 C#에서 정규표현식을 사용하는 방법에 대해 자세히 살펴보겠습니다.
정규표현식이란?
정규표현식은 문자열에서 특정한 패턴을 찾거나, 특정한 패턴으로 문자열을 대체할 때 사용하는 표현식입니다. 정규표현식은 문자열에서 일치하는 부분을 찾기 위해 사용됩니다.
정규표현식의 예
다음은 정규표현식의 간단한 예입니다.
using System.Text.RegularExpressions;
string pattern = @"\\\\d+";
string input = "12345";
Regex regex = new Regex(pattern);
Match match = regex.Match(input);
if (match.Success)
{
Console.WriteLine("Matched: " + match.Value);
}
위의 예제에서는 \d+ 패턴을 사용하여 숫자를 찾습니다. Match() 메서드를 사용하여 패턴과 일치하는 문자열을 찾고, Success 속성을 사용하여 일치하는 문자열이 있는지 확인합니다.
정규표현식 패턴
정규표현식에서 사용되는 패턴은 다양한 종류가 있습니다. 다음은 몇 가지 자주 사용되는 패턴입니다.
- ^ : 문자열의 시작
- $ : 문자열의 끝
- . : 임의의 문자
- : 0개 이상의 문자
- : 1개 이상의 문자
- ? : 0개 또는 1개의 문자
- [] : 문자 집합
- [^] : 부정 문자 집합
- () : 그룹화
- | : 논리 OR
정규표현식을 사용한 문자열 검색
정규표현식을 사용하여 문자열에서 특정한 패턴을 검색하는 방법은 다음과 같습니다.
using System.Text.RegularExpressions;
string pattern = @"\\\\d+";
string input = "12345";
Regex regex = new Regex(pattern);
MatchCollection matches = regex.Matches(input);
foreach (Match match in matches)
{
Console.WriteLine("Matched: " + match.Value);
}
위의 예제에서는 Matches() 메서드를 사용하여 문자열에서 모든 숫자를 찾습니다. MatchCollection 객체를 사용하여 일치하는 모든 문자열을 저장하고, foreach 루프를 사용하여 각 일치하는 문자열을 출력합니다.
결론
C#에서 정규표현식은 문자열에서 특정한 패턴을 찾거나, 특정한 패턴으로 문자열을 대체할 때 사용하는 표현식입니다. 정규표현식은 System.Text.RegularExpressions 네임스페이스를 통해 지원됩니다. 이번 글을 통해 정규표현식의 기본 개념과 사용 방법에 대해 알아보았습니다. 정규표현식은 문자열 처리에 매우 유용하므로, C#을 사용하는 개발자라면 정규표현식을 잘 활용할 수 있도록 공부해두는 것이 좋습니다.
'C#' 카테고리의 다른 글
C# 네이밍 규칙 : PascalCase, camelCase, Snake case (0) | 2023.04.05 |
---|---|
C# 객체지향 다형성 : new, virtual, override, sealed (0) | 2023.03.30 |
C# Delegate : 대리자 (0) | 2023.03.28 |
C# Dictionary ContainsKey() vs TryGetValue() (0) | 2023.03.28 |
C# 람다 식 사용 (0) | 2023.03.14 |