코딩테스트/Java 문법 정리

정규표현식 정리(Java,JS,Python 등)

SK_MOUSE 2021. 3. 1. 22:50
반응형

www.youtube.com/watch?v=t3M6toIflyQ

영상보고 이해하는게 더 직관적이다.

 

정규표현식은 크게 4가지로 분류한다."

 

Groups and ranges

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

 

Quantifiers

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

 

Boundary-type

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

 

Character classes

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

 

예시)

유튜브의 뒷부분만 가져올때

괄호로 묶은 그룹1,2,3 중 마지막꺼만 사용할것이므로 ?:를 붙여주면 그룹에서 제외된다.

따라서 최종 return값은 맨뒤 11자리 부분이다.

 

match를 통해서 return값은 배열로 돌아온다.

result에 들어가는 배열의 두번째 인덱스(= result[1])이 최종적인 선택값이다.

 

js,python에서는 match

java에서는 matches

enterkey.tistory.com/353

 

[JAVA] 정규표현식, Matcher 메서드 사용방법과 그룹 개념이해

Matcher 클래스 메서드들 find() : 패턴이 일치하는 경우 true를 반환하고, 그 위치로 이동(여러개가 매칭되는 경우 반복 실행가능) find(int start) : start위치 이후부터 매칭검색을 수행 start() : 매칭되는

enterkey.tistory.com

 

를 사용하여 정규식에 일치하는 문자열을 찾는다.

 

문법 정리(github.com/dream-ellie/regex)

 

 

반응형