
| Flag | 설명 |
|---|---|
| g | 문자열 내의 모든 패턴 검색 |
| i | 대소문자를 구별하지 않고 검색 |
| m | 문자열의 행이 바뀌더라도 계속 검색 |
| s | . 이 개행문자(\n) 도 포함하여 검색 |
| u | 유니코드 전체 지원 |
| y | 특정 위치에서 검색 진행 모드 활성화 |
| 패턴 | 설명 |
|---|---|
| a-z | 영어 소문자 (-로 범위 지정) |
| A-Z | 영어 대문자 (-로 범위 지정) |
| ㄱ-ㅎ가-힣 | 한글 문자 (-로 범위 지정) |
| 0-9 | 숫자 (-로 범위 지정) |
| . | 모든 문자열(영어, 한글, 숫자, 특수기호, 공백 등), 단 |
| \d | 숫자 |
| \D | 숫자 이외 |
| \w | 영어 알파뱃과 숫자 및 인것, [A-Za-z0-9]와 동일 |
| \W | \w 이외 |
| \s | 공백 |
| \S | 공백 이외 |
| \특수기호 | 특수기호, 예) * ! \? … 등 |
| \b | 63개 문자(영문 대소문자 52개 + 숫자 10개 + _(underscore))가 아닌 나머지 문자에 일치하는 경계(boundary) |
| \B | 63개 문자에 일치하는 경계 |
| \x | 16진수 문자에 일치/\x61/는 a에 일치 |
| \0 | 8진수 문자에 일치/\141/은 a에 일치 |
| \u | 유니코드(Unicode) 문자에 일치/\u0061/는 a에 일치 |
| \c | 제어(Control) 문자에 일치 |
| \f | 폼 피드, (FF, U+000C) 문자에 일치 |
| \n | 줄 바꿈, (LF, U+000A) 문자에 일치 |
| \r | 캐리지 리턴, (CR, U+000D) 문자에 일치 |
| \t | 탭, (U+0009) 문자에 일치 |
| 패턴 | 설명 |
|---|---|
| 예) a | b |
| [] | 대괄호 안의 문자들 중 하나 |
| 예) /[abc]/ : "a" | "b" |
| [^문자] | 대괄호 안의 문자를 제외한 문자 |
| 예) [^lgEn] "l" "g" "E" "N" 4개 문자를 제외 | |
| ^문자열 | 특정 문자열로 시작 |
| 예) /^www/ | |
| 문자열$ | 특정 문자열로 끝 |
| 예) /com$/ |
| 패턴 | 설명 |
|---|---|
| ? | 없거나 or 최대 한개만 |
| 예) /apple?/ | |
| * | 없거나 or 있거나 (여러개) |
| 예) /apple*/ | |
| + | 최소 한개 or 여러개 |
| 예) /apple+/ | |
| *? | 없거나, 있거나 and 없거나, 최대한개 : 없음 |
| {0} 과 동일 | |
| +? | 최소한개, 있거나 and 없거나, 최대한개 : 한개 |
| {1}과 동일 | |
| {n} | n개 |
| 예) ^[a-z]{2}$ | |
| {min,} | 최소 Min개 이상 |
| 예) ^[a-z]{1,}$ | |
| {min, max} | 최소 Min개 이상, 최대 Max개 이하 |
| 예) ^[a-z]{2,5}$ |
| 패턴 | 설명 |
|---|---|
| () | 그룹화 및 캡쳐 |
| (?:패턴) | 그룹화 |
| (?=) | 앞쪽 일치 |
| 예) /ab(?=c)/ | |
| (?!) | 부정 앞쪽 일치 |
| 예) /ab(?!c)/ | |
| (?≤) | 뒤쪽 일치 |
| 예) /(?<=ab)c/ | |
| (?<!) | 부정 뒤쪽 일치 |
| 예) /(?<!ab)c/ |
| 상황 | 샘플 |
|---|---|
| 숫자만 허용 | /^[0-9]+$/ |
| 한글만 허용 | /^[ㄱ-ㅎ가-힣]+$/ |
| 휴대전화 번호 | /^010-[0-9]{4}-[0-9]{4}$/ |
| 아이디 | ^[a-z][a-z0-9]{4,10}$ 영어 소문자로 시작하는 영어 소문자 및 숫자로 이루어진 4~10글자 |
| 이메일 | /^0-9a-zA-Z[a-zA-Z0-9-_.]{3,63}@0-9a-zA-Z[a-zA-Z0-9-_.]{3,63}.[a-zA-Z]{2,3}$/ |