본문 바로가기
Java/Java language

[JAVA]3. 자바의 정규표현식?

by oomm112 2021. 8. 6.

A. 정규 표현식이란?

- 컴퓨터 과학의 정규언어로부터 유래하였고 특정한 규칙을 가진 문자열의 집합을 표현하기 위해 쓰이는 형식언어이다.-

- 보통 개발을 할때  이메일 형식, 전화번호 등에 쓰입니다. 

 

B.자주 쓰는 정규 표현식

정규 표현식 설명
^[0-9]*S 숫자
^[a-zA-z]*S 영문자
\\w+@\\w+\\.\\+(\\.\\w+)? 이메일
^\d{2, 3} -\d{3, 4} -\d{4}S 전화번호
^01(?"0|1|[6-9])-(?:\d{3}|\d{4})-\d{4}S 휴대전화번호
\d{6} \- [1-4]\d{6} 주민등록번호
^\d{3}-\d{2}S 우편번호

보통 자주 사용하는 정규식 같은경우에는 위와 같은 정규표현식들이 있다.

 

C.정규표현식 문법

정규 표현식 설명
^ 문자열 시작
. 임의의 한 문자(단 \은 넣을 수 없음)
$ 문자열 종료
* 앞문자가 없을수도 무한정 많을수도 있다
+ 앞문자가 하나 이상일 경우
? 앞문자가 없거나 하나 있음
[ ] 문자의 집합이나 범위를 나타내며 두 문자 사이는 - 기호로 범위를 나타냅니다. [] 내에서 ^ 가 선행하여 존재하면 not을 나타낸다.
{ }  횟수 또는 범위를 나타냅니다.
( ) 소괄호 안의 문자를 하나의 문자로 인식
| 패턴안에서 OR연산을 수행시 사용
\ 정규 표현식 역슬래시(\)는 확장문자 (역슬래시 다음에 일반 문자가 오면 특수문자로 취급하고 역슬래시 다음에 특수문자가 오면 그 문자 자체를 의미)
\b 단어의 경계
\B 단어가 아닌것에 대한 경계
\A 입력의 시작 부분
\G 이전 매치의 끝
\Z 입력의 끝이지만 종결자가 있는 경우
\z 입력의 끝
\s 공백문자
\S 공백 문자가 아닌 나머지 문자
\w 알파벳이나 숫자
\W 알파벳이나 숫자를 제외한 문자
\d 숫자 [0~9]와 동일
\D 숫자를 제외한 모든 문자
(?i) 앞부분에 (?i)라는 옵션을 넣어주게 되면 대소문자는 구분하지 않습니다!

 

반응형

'Java > Java language' 카테고리의 다른 글

[JAVA]6. 배열?  (0) 2021.08.13
[JAVA]5. 삼항 연산자 / break와 continue의 차이  (0) 2021.08.13
[JAVA]4. 자바 JDK와 식별자  (0) 2021.08.13
[JAVA]2. 자바의 특징(2)  (0) 2021.07.26
[JAVA]1. 자바의 특징 - 객체지향  (0) 2021.07.26

댓글