초보자를 위한 정규식(Regex) 사용법

개발자

정규식의 기초를 배우세요: 패턴 매칭 방법, 문자 클래스, 수량자, 그룹을 사용하여 텍스트를 찾고 검증하는 방법.

단계별 가이드

1

Regex가 무엇인지 이해하기

정규식(regex)은 검색 패턴을 정의하는 문자 시퀀스입니다. 텍스트를 찾고, 검증하고, 추출하거나 대체하는 데 사용됩니다. 거의 모든 프로그래밍 언어와 많은 텍스트 편집기에서 지원합니다.

2

리터럴 문자 매칭하기

가장 간단한 regex는 리터럴 문자열입니다. 패턴 `cat`은 "concatenate"와 "scat"의 "cat"에 매칭됩니다. 기본적으로 대소문자를 구별합니다: `Cat`은 "cat"에 매칭되지 않습니다.

3

문자 클래스 사용하기

`[abc]`는 a, b, c 중 하나에 매칭. `[a-z]`는 소문자. `[0-9]`는 숫자. `[^abc]`는 a, b, c 이외의 문자. 단축형: `d` = 숫자, `w` = 단어 문자(영숫자/_), `s` = 공백 문자.

4

수량자 사용하기

`*` = 0회 이상 | `+` = 1회 이상 | `?` = 0회 또는 1회 | `{3}` = 정확히 3회 | `{2,5}` = 2~5회. 예: `d{3}-d{4}`는 "555-1234" 같은 전화번호 부분에 매칭. 수량자 뒤에 `?`를 붙이면 최소 매칭(게으른)이 됩니다.

5

앵커와 그룹 사용하기

`^`는 행 시작에 앵커; `$`는 행 끝에 앵커. `(abc)`는 캡처 그룹 생성. `(cat|dog)`는 "cat" 또는 "dog"에 매칭. 예: `^d{5}$`는 정확히 5자리 우편번호에만 매칭.

무료 도구 사용

Regex 테스터

자주 묻는 질문

Q: 리터럴 점이나 괄호를 매칭하려면?

A: `.`, `*`, `+`, `?`, `(`, `)`, `[`, `]`, `{`, `}`, `^`, `$`, `|`, `` 같은 특수 문자는 백슬래시로 이스케이프해야 합니다. `.`는 리터럴 점, `(`는 리터럴 괄호를 매칭합니다.

Q: 탐욕적 매칭과 게으른 매칭의 차이는?

A: 탐욕적 수량자(기본)는 최대한 많이 매칭합니다. 게으른 수량자(`?` 추가)는 최소한만 매칭합니다. 예: `<.+>`는 "<b>bold</b>" 전체에 매칭하지만, `<.+?>`는 "<b>"만 매칭합니다.

Q: Regex를 어디서 테스트할 수 있나요?

A: Regex 테스터 도구를 사용하여 패턴을 입력하고 테스트 텍스트를 넣으면 실시간으로 매칭 부분이 강조 표시됩니다. 캡처 그룹과 매칭 세부 정보도 즉시 확인할 수 있습니다.

관련 가이드