JS/JS 공부

[JS] 정규식 (정규표현식 사용 패턴)

congs 2023. 4. 25. 09:56

정규식 특정 문자 숫자 매칭 패턴

패턴 의미
a-zA-Z 영어알파벳(-으로 범위 지정)
ㄱ-ㅎ가-힣 한글 문자(-으로 범위 지정)
0-9 숫자(-으로 범위 지정)
. 모든 문자열(숫자, 한글, 영어, 특수기호, 공백 모두)
단, 줄바꿈 X
\d 숫자
\D 숫자가 아닌 것
\w 밑줄 문자를 포함한 영숫자 문자에 대응
[A-Za-z0-9_] 와 동일
\W \w 가 아닌 것
\s space 공백
\S space 공백이 아닌 것
\특수기호 특수기호 \* \^ \& \! \? ...등
\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) 문자에 일치

정규식 검색 기준 패턴

기호 의미
| OR
a|b
[] 괄호안의 문자들 중 하나. or 처리 묶음 보면 된다.
/abc/ : "abc"를 포함하는
/[abc]/ : "a" 또는 "b" 또는 "c" 를 포함하는
[다-바] : 다 or 라 or 마 or 바
[^문자] 괄호안의 문자를 제외한 것
[^lgEn] "l" "g" "E" "N" 4개 문자를 제외

※ 대괄호 안에서 쓰면 제외의 뜻, 대괄호 밖에서 쓰면 시작점 뜻
^문자열 특정 문자열로 시작 (시작점)
/^www/ ( ^. = 어떤걸로 시작해도 상관없음 ) 
문자열$ 특정 문자열로 끝남 (종착점)
/com$/

정규식 갯수 반복 패턴

기호 의미
? 없거나 or 최대 한개만
/apple?/
* 없거나 or 있거나 (여러개)
/apple*/
+ 최소 한개 or 여러개
/apple+/
*? 없거나, 있거나 and 없거나, 최대한개 : 없음
{0}와 동일
+? 최소한개, 있거나 and 없거나, 최대한개 : 한개
{1}와 동일
{n} n개
{Min,} 최소 Min개 이상
{Min, Max} 최소 Min개 이상, 최대 Max개 이하
{3,5}? == {3}와 동일

 

 

== 정규표현식 정리 사이트 == 

 

https://inpa.tistory.com/entry/JS-%F0%9F%93%9A-%EC%A0%95%EA%B7%9C%EC%8B%9D-RegExp-%EB%88%84%EA%B5%AC%EB%82%98-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0-%EC%89%BD%EA%B2%8C-%EC%A0%95%EB%A6%AC#thankYou