정규표현식 특수 문자
문자 |
일치 |
예제 |
^ | 입력값의 시작 |
/^This/ 는 "This is.." 와 일치 |
$ |
입력값의 끝 |
/end/는 "This is the end" 와 일치 |
* |
0번 이상 반복 |
/se*/는 "seeee"와 "se"에 일치 |
? |
0번 또는 1번 반복 |
/ap?/는 "apple" 과 "and"에 일치 |
+ | 1번 이상 반복 |
/ap+/는 "apple"에는 일치. "apie"에는 불일치 |
{n} |
정확히 n번 반복 |
/ap{2}는 "apple"에는 일치. "apie"에는 불일치 |
{n,} | n번 이상 반복 |
/ap{2,}는 "apple"과 "apple"의 모든 p에 일치. "apie"에는 불일치 |
{n,m} |
최소 n번, 최대 m번 |
/a,p{2,4}/는 "appppppple"의 p 4개에 일치 |
. |
줄 바꿈을 제외한 모든문자 |
/a,e/는 "ape"와 "axe"에 일치 |
[^...] |
대괄호 안의 문자를 제외한 모든문자 |
/a[^px]/는 "ale"에는 일치. "axe"나 "ape"에는 불일치 |
\b |
단어 경계 |
/\bno/는 "nono"에서 첫번째 "no"에 일치 |
\B |
단어 경계를 제외한 모든문자 |
/\Bno/는 "nono"에서 두번째 "no"에 일치 |
\d |
0부터 9까지의 숫자 |
/\d{3}는 "Now in 123"에서 123에 일치 |
\D |
숫자를 제외한 모든문자 |
/\D{2,4}/는 "Now in 123" 에서 "Now"에 일치 |
\w |
단어 문자(알파벳,숫자,밑줄) |
/\w/는 "javascript"에서 "j"에 일치 |
\W |
단어 문자가 아닌 문자 (알파벳,숫자,밑줄이 아닌 문자) |
/\W/는 "100%"에서 "%"에 일치 |
\n |
줄바꿈 | |
\s |
하나의 공백 문자 | |
\S |
공백 문자가 아닌 모든 문자 | |
\t |
탭 | |
(x) |
캡쳐할 괄호 |
일치한 문자들 기억 |
[...] |
대괄호 안의 모든문자 |
/a[px]e/는 "ape" 와 "axe"에 일치. "ale"에는 불일치 |
정규표현식의 플래그
플래그 |
의미 |
g | 전역 검색, 첫 번째 일치 결과에서 멈추지 않고 전체 문자열에 대해 패턴 검색 |
i |
대소문자를 구분하지 않음 |
m |
여러줄 문자열에서 시작과 끝을 의미하는 특수 문자(^과$)를 각줄에 적용 |
특수 문자표
패턴 | 목적 |
$$ |
치환시 달러 문자($)허용 |
$& | 검색한 부분 문자열 삽입 |
$` |
일치한 부분 바로 앞까지의 문자열 |
$' | 일치한 부분 바로 뒤부터의 문자열 |
$n |
RegExp를 사용할 때 n번째 캡처된 괄호값 삽입 |