정규표현식 ( Regex )
정규표현식이란 문자열에서 특정한 패턴을 찾기 위한 규칙이다.
'이런 모양의 문자열을 찾아줘' 라고 컴퓨터에게 알려주는 패턴 언어이다.
핵심 문법 정리
1. 문자 그대로 매칭
| 패턴 | 의미 |
| a | 문자 a |
| abc | 문자열 abc |
2. 메타 문자 ( 특수 문자 )
| 기호 | 의미 |
| . | 아무 문자 1개 |
| \d | 숫자 |
| \w | 문자 + 숫자 + _ |
| \s | 공백 |
▼ 예시
\d\d\d
└ 숫자 3자리를 의미
3. 수량자 ( 몇번 반복인지 )
| 기호 | 의미 |
| * | 0번 이상 |
| + | 1번 이상 |
| ? | 0 또는 1번 |
| { 3 } | 정확히 3번 |
| { 2, 5 } | 2~5 번 |
▼ 예시
\d{3}
└ 숫자 3자리를 의미
4. 범위 지정
// a 또는 b 또는 c
[abc]
// 소문자 a ~ z
[a-z]
// 소문자 제외
[^a-z]
5. 그룹
(abc)
- 하나의 그룹으로 묶음
- 캡처 가능
6. 시작과 끝
| 기호 | 의미 |
| ^ | 시작 |
| $ | 끝 |
▼ 예시
^\d{3}$
└ 정확히 숫자 3자리만 허용
예시 코드
1. 이메일 검사
^\w+@\w+\.\w+$
2. 전화번호 ( 010 - 1234 - 5678 )
^010-\d{4}-\d{4}$
3. 숫자만 포함 여부
^\d+$
C# 예시 코드
using System.Text.RegularExpressions;
string input = "010-1234-5678";
bool isMatch = Regex.IsMatch(input, @"^010-\d{4}-\d{4}$");
Console.WriteLine(isMatch);
정규표현식의 장단점
- 강력하다
- 짧다
- 가독성이 나쁘다
- 처음 사용에는 어렵다
정리
정규표현식은 문자열을 패턴 기반으로 검색 , 검증 , 치환하기 위한 언어이다.
개발에서 입력 검증과 텍스트 처리의 핵심 도구이다.
'⭐C Sharp > 00. 문법' 카테고리의 다른 글
| Contains (0) | 2025.12.29 |
|---|---|
| 선택적 매개변수 (0) | 2025.12.23 |
| 얕은 복사 vs 깊은 복사 (0) | 2025.10.19 |
| 애트리뷰트 ( C# Attribute ) (0) | 2025.10.14 |
| IsNumeric (0) | 2025.10.08 |