C.W.K.
Stream
Lesson 01 of 12 · published

리터럴 글자 — 기본값

~6 min · literals, fundamentals

Level 0패턴 호기심
0 XP0/90 lessons0/15 achievements
0/100 XP to next level100 XP to go0% complete

패턴 대부분이 리터럴

트랙 1 에서 짚었지만, 기초니까 한 강 집중. 패턴 안의 모든 글자 중 14개 메타문자가 아닌 건 다 리터럴. 자기 자신을 매칭. 룰 끝.

패턴 hello 는 부분 문자열 hello 매칭. 패턴 2026-05-042026-05-04 매칭. 패턴 The quick brown foxThe quick brown fox 매칭.

대소문자 구분이 기본

기본적으로 catCat 이나 CAT 안 매칭. 거의 모든 엔진에 case-insensitive 플래그 — JS/PCRE 의 i, Python 의 re.IGNORECASE, 많은 flavor 의 inline (?i). case-insensitive 원할 땐 명시적으로 — 가정하지 마.

공백은 정확히 공백 매칭

패턴의 리터럴 공백 한 개는 공백 정확히 한 개 매칭. 패턴의 공백 셋은 입력의 공백 셋 필요. "종류 무관 공백 하나 이상" 원하면 \s+ 필요 (트랙 2, 6강).

Unicode 는 대부분 투명

현대 엔진은 Unicode 리터럴을 예상대로 처리. 패턴 피파피파 매칭. 복잡함이 시작되는 건 Unicode 를 case-insensitive, normalization form, shorthand class 와 섞을 때 — 나중에 다룸. 리터럴만이라면 그냥 글자 타이핑.

Code

리터럴 매칭 — 케이스/공백·python
import re

# 기본 case-sensitive
re.findall(r'cat', 'Cat scattered cats')
# ['cat']

# case-insensitive 플래그
re.findall(r'cat', 'Cat scattered cats', re.IGNORECASE)
# ['Cat', 'cat', 'cat']

# 공백 리터럴: 1 공백은 정확히 1 공백 매칭
re.findall(r'foo bar', 'foo bar  foo  bar')  # 더블 공백은 깨짐
# ['foo bar']

# 한글 리터럴 투명 동작
re.findall(r'피파', '피파 안녕 피파')
# ['피파', '피파']

External links

Exercise

regex 테스터 열고 'Re: Your invoice #1138' 같은 이메일 제목 매칭하는 패턴 셋 써 — case-sensitive 한 개, case-insensitive 한 개, 사용자가 단어 사이에 추가 공백 넣어도 살아남는 한 개. 셋째는 아직 안 배운 quantifier 가 필요한 거 인지해.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.