728x90
반응형
정규 표현식
- 주어진 문자열에서 발견할 수 있는 글자 패턴을 표현한 식
정규 표현식 표현법
표현식 | 의미 |
---|---|
^X | 문자 선택을 표현하며 x 와 y 중에 하나를 의미한다. |
x$ | 문자열의 종료를 표현하며 x 문자로 종료됨을 의미한다. |
.x | 임의의 한 문자의 자리수를 표현하며 문자열이 x로 끝난다는 것을 의미한다 |
x+ | 반복을 표현하며 x 문자가 한번 이상 반복됨을 의미한다 |
x? | 존재여부를 표현하며 x 문자가 존재할 수도, 존재하지 않을 수도 있음을 의미한다 |
x* | 반복여부를 표현하며 x 문자가 0번 또는 그 이상 반복됨을 의미한다 |
x` | `y |
(x) | 그룹을 표현하며 x를 그룹으로 처리함을 의미한다 |
(x)(y) | 그룹들의 집합을 표현하며 앞에서부터 순서대로 번호를 부여하여 관리하고 x,y는 각 그룹의 데이터로 관리된다 |
(x)(?:y) | 그룹들의 집합에 대한 예외를 표현하며 그룹 집합으로 관리되지 않음을 의미한다 |
x{n} | 반복을 표현하며 x 문자가 n번 반복됨을 의미한다 |
x{n,} | 반복을 표현하며 x 문자가 n번 이상 반복됨을 의미한다 |
x{n,m} | 반복을 표현하며 x 문자가 최소 n번 이상 최대 m번 이하로 반복됨을 의미한다 |
표현식 | 의미 |
---|---|
[xy] | 문자 선택을 표현하며 x와 y 중에 하나를 의미한다 |
[^xy] | not을 표현하며 x및 y를 제외한 문자를 의미한다 |
[x-z] | range를 표현하며 x~z 사이의 문자를 의미한다 |
^ | escape를 표현하며 ^를 문자로 사용함을 의미 |
\b | word boundary를 표현하며 문자와 공백 사이의 문자를 의미한다 |
\B | non word boundary를 표현하며 문자와 공백 사이가 아닌 문자를 의미한다 |
\d | digit를 표현하며 숫자를 의미한다 |
\D | non digit를 표현하며 숫자가 아닌 것을 의미한다 |
\s | space를 표현하며 공백 문자를 의미한다 |
\S | non space를 표현하며 공백 문자가 아닌 것을 의미한다 |
\t | tab을 표현하며 탭 문자를 의미한다 |
\v | vertical tab을 표현하며 수직 탭 문자를 의미한다 |
\w | word를 표현하며 알파벳 + 숫자 + _ 중의 한 문자임을 의미한다 |
\W | non word를 표현하며 알파벳 + 숫자 + _가 아닌 문자임을 의미한다 |
정규 표현식 활용 예제
ip validation
/^([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\.([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])){2}(\.([1-9]?[1-9]|[1-9][0-9]{1}|1[0-9]{2}|2[0-4][0-9]|25[0-5]))$/
이메일
/^[0-9a-zA-Z]([-_\.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-_\.]?[0-9a-zA-Z])*\.[a-zA-Z]{2,3}$/i
금액
^[1-9]{1}[0-9]{0,2}(\\,?[0-9]{3})*$
728x90
반응형
'웹 프로그래밍 > JAVA' 카테고리의 다른 글
[JAVA] 변수란? (0) | 2021.10.18 |
---|---|
[JAVA] JAVA 특징 (0) | 2021.10.18 |
LocalDate, LocalTime, LocalDateTime (0) | 2021.05.20 |
[JAVA] BufferedReader, BufferedWriter (0) | 2021.04.30 |
[JAVA] LinkedList란? (0) | 2021.04.29 |