개발 기록이

[정규표현식] 정규표현식 정리 본문

웹 개발

[정규표현식] 정규표현식 정리

studyingbackhoe 2023. 3. 2. 22:30

# 정규표현식 공부나 테스트하기에 좋은 사이트 RegExr

https://regexr.com/

 

RegExr: Learn, Build, & Test RegEx

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

regexr.com

 

자주 사용할 것 같은 것들만 정리해보려고 한다.

 

1)  ^ : 입력 시작을 의미  ex) ^a : a부터 시작

2)  a$: 입력 끝을 의미    ex) a$ : 맨 끝이 a로 끝남

3)   .  : \n, \r 등 개행 문자를 제외한 임의의 문자 1개를 의미 

4)  ab{n} : ab가 n 번 반복   ex) ab{3} : ababab

5)  ab{n,} : ab가 n 번이상 반복   ex) ab{3} : ababab...

6)  ab{n, m} : ab가 n번 이상 m번 이하 반복   ex) ab{3, 5} : ababab 이상 ababababab 이하 

7)  a? : 문자 a를 의미 or 문자 없음  * ? 의 의미 == "옵션"   ex)  a? :  a 또는 문자 없음  == a{0,1}

8)  a+ : a가 1번 이상 반복  == a{1,}

9)  a* : a가 0번 이상 반복 == a{0,}

10) |  :  a | b  ->  a 또는 b  ex) b(a | e | i)d  == bad bed bid 허용

11)  () : 그룹화, 캡쳐링

12)  \  : 이스케이프 - 특수문자를 표시할 때 사용함  ex) \[, \], \(, \), \^, \$, \.  ...

13)  \w : underbar(_)를 포함한 알파벳, 숫자 포함  == [A-Za-z0-9_]

14)  \W : \w 와 반대, 비문자를 의미(space도 포함)  == [^A-Za-z0-9]

15)  \b : \w와 \W 사이의 경계  ex) \ba 의 경우 : -a ' a' _a aan apple  * -, ' , space : 비문자/  _, 알파벳 : 문자

16)  \B : 비문자 - 비문자 또는 문자 - 문자 사이의 경계를 의미 

17)  \d : 숫자 == [0-9]

18)  \D : 숫자가 아닌 것  == [^0-9]

19)  \s  : 하나의 공백 문자

20)  \S : 공백 문자가 아닌 모든 문자

21)  [a-z] : a부터 z까지의 문자

22) [^xy] : x와 y를 제외한 모든 문자

23) ? : 옵션을 의미, 물음표 앞 문자가 1개 있거나 없는 경우 허용  ex) hell?o -> helo 가능, hello 가능

23) 플래그

   - g : global, 전체 검색을 의미

   - i  :  case insensitive, 대소문자를 구별하지 않음

   - m : multiline, 여러 줄 검색 

 

 

 


참고: https://pyh13701.tistory.com/31, https://choonse.com/2022/06/01/1033/