본문 바로가기
Tech/etc

더 찾기 귀찮아서 정리하는 정규식 표현

by 패드로 2021. 3. 31.

Javascript, Python, Dart 및 각종 에디터에서 사용하는 정규식을 매번 인터넷 검색해서 찾다가

찾더라도 내 블로그에서 찾아야지 하는 마음으로 정리해봅니다.

 

정규식 쓰는 방법 

/이 사이에 쓰는 내용은 정규식 패턴이다/ <= 이 사이의 패턴을 익히는 것이 중요

//이 뒤에 쓰는 내용은 정규식 플래그다(옵션)

 

 

정규식 테스트 가능한 사이트 - regexr.com/

 

RegExr: Learn, Build, & Test RegEx

RegExr is an online tool to learn, build, & test Regular Expressions (RegEx / RegExp).

regexr.com

 

 

주요 문법

그룹 / 범위

| 또는
() 그룹
[] 문자셋, 괄호안의 어떤 문자든
[^] 부정 문자셋, 괄호안의 어떤 문가 아닐때
(?:) 찾지만 기억하지는 않음

([0-2][0-9]:[0-5][0-9]) => 03:30 처럼 시간 

(gr[ea]y) => grey, gray 둘 다 검색

(gr[ae]y[^a-z]) => grey, gray 검색하되 뒤에 아무것도 안붙어있는 단어 검색 

 

정량 - 해당 문자 뒤에 붙여서 쓰며 {}를 붙여 쓸 수 있음

? 없거나 있거나 (zero or one)
* 없거나 있거나 많거나 (zero or more)
+ 하나 또는 많이 (one or more)
{n} n번 반복
{min,} 최소
{min,max} 최소, 그리고 최대

a? => a가 없거나 있거나

a* => a가 없거나 있거나 많거나

a+ => a가 하나 있거나 많거나

 

구분

\b 단어 경계
\B 단어 경계가 아님
^ 문장의 시작
$ 문장의 끝

\bj => j로 시작하는 단어의 j

j\b => j로 끝나는 단어의 j

j\B => j로 끝나지 않는 단어의 j

 

타입

\ 특수 문자가 아닌 문자
. 어떤 글자 (줄바꿈 문자 제외)
\d digit 숫자
\D digit 숫자 아님
\w word 문자
\W word 문자 아님
\s space 공백
\S space 공백 아님

\[\] => \를 검색하고 싶을때

 

 

참고한 유튜브

 

댓글