📝 문법
Character
\\ | 백슬래시(\) 문자 |
\t | tab(탭) 문자 |
\n | newline 문자(ex. 엔터) |
\r | carriage-return 문자 |
\d | 숫자 : [0-9] |
\D | 숫자를 제외한 모든 문자 : [^0-9] |
\s | 공백 문자 : [ \t\n\x0B\f\r] |
\S | 공백이 아닌 문자 : [^\s] |
\w | 숫자나 영어, _(under-bar) : [a-zA-Z_0-9] |
\W | 숫자나 영어, _가 아닌 모든 문자 : [^\w] |
. | 모든 문자 |
💡 정규식에서 특수문자를 사용해 검색하고 싶은 경우?
모든 문자를 검색한다는 의미의 *과 Character '*'을 구분할 수 없기 때문에 \\를 붙여 사용해야 한다.
* → \\*
Character Class
[] | 문자를 하나의 집합으로 묶는다 |
[abc] | a, b, c 모두 가능 |
[^abc] | a, b, c 제외 |
[a-zA-Z] | 합집합, a-z거나 A-Z까지 가능 |
[a-z&&[def]] | 교집합, d, e, f 만 가능 |
Boundary & Quantifiers
^ | 문자열의 시작 |
$ | 문자열의 종료 |
X? | X가 0 또는 1개 존재 |
X* | X가 0개 이상 존재 |
X+ | X가 1개 이상 존재 |
X{n} | X가 정확히 n개 존재 |
X{n,} | X가 최소 n개 존재 |
X{n,m} | X가 n개 이상 m개 이하 존재 |
Operator
XY | X뒤에 Y가 존재 |
X|Y | X나 Y |
(X) | X를 하나의 그룹으로 묶는다 |
📚 Reference
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/regex/Pattern.html
'Programming > Java' 카테고리의 다른 글
[Java] Java란? Java의 특징 (0) | 2021.02.16 |
---|---|
[Java] Pattern, Matcher Class 사용법과 메소드 정리 (8) | 2021.01.21 |
[Java] JVM, JDK, JRE의 차이 (0) | 2021.01.01 |
[Java] Iterable과 Iterator (0) | 2020.12.13 |
ArrayList와 LinkedList의 차이, 선택하기 (0) | 2020.12.13 |