관리 메뉴

Sysops Notepad

정규표현식(Regular Expression) 사이트 및 팁 본문

업무/dev

정규표현식(Regular Expression) 사이트 및 팁

sysops 2021. 4. 22. 14:47

정규식 테스트 사이트 중 가장 많이 사용되는 사이트 1

http://www.regexr.com

 

정규식 테스트 사이트 중 가장 많이 사용되는 사이트 2

https://regex101.com/

 

Ruby기반 정규식 테스트

http://rubular.com/

 

Java기반 정규식 테스트

http://www.regexplanet.com/advanced/java/index.html

 

정규식의 시각화

http://www.regexper.com

 

정규식 추천해주는 사이트

http://txt2re.com/index.php3

 

 

# regexp

/ 정규식 패턴 시작과 끝

^ 문자열의 시작, ^a  a로 시작하는

$ 문자열의 끝, a$ a로 끝나는

? 앞문자가 0번 또는 1번 발생 {0,1} 과 같다.

앞문자가 0번 이상 발생 {0,} 과 같다.

앞문자가 1번 이상 발생 {1,} 과 같다.

. 어떤 문자도 일치

| 선택, a|b 는 a 또는 b

() 하위식(subexpression), 괄호 안의 내용을 하나의 그룹으로, 그룹마다 왼쪽부터 $1 $2 ... $괄호개수 로 사용된다.

(?:) 그룹으로 처리되지 않도록 한다.
[] 안의 문자 한개 선택, a[bcd]a 는 aba aca ada 가 된다.

\특수문자 특수문자 자체

\0 null
\n 줄바꿈
\r 캐리지 리턴

\d 숫자

\D 숫자가 아닌

\s 공백

\S 공백이 아닌

\t 탭

\v 버티컬 탭

\w 워드 [A-Za-z0-9_] 와 같다.
\W 워드가 아닌 [^A-Za-z0-9_] 와 같다.

\< 단어의 시작

\> 단어의 끝

[a-z] a부터z 중 문자 하나

[^ab] a 와 b를 제외한 문자 하나
a{2} a 가 2번 반복

a{1,5} a 가 1번 이상 5번 이하 반복

a{1,} a 가 1번 이상 반복



# /패턴/ 뒤에 명시

g 전체대상

i 대소문자 무시

m 멀티라인

x 공백문자 무시

# matched text
$1 $2 ... $n 으로 정규식과 일치하는 n 개의 값을 지칭한다.

# nginx flag
~ 는 case-sensitive(대소문자 구별) 정규식
~* 는 case-insensitive(대소문자 구별안함) 정규식
@ 는 location 블럭이름 정의

 

 

# glob 표현(패턴) 정규식은 아니고, 유닉스에서 파일 집합을 표현하는데 쓰인다.

* 는 어떤 문자든 0번 이상  매칭
? 는 어떤 문자든 1번 매칭

Comments