정규 표현식이라 문자열을 처리하는 방법으로 패턴 기반의 특정한 조건에 맞는 문자를
검색하거나 치환하는데 사용된다
Regular Expression=줄여서 ‘regexp’ 많이 보인다
xa?y$ : 시작 문자열은 관계없음.
문자열 중에서 x 뒤에 a가 올 수도 있고, 안 올 수도 있으며,
그 뒤의 마지막은 y로 끝나야 한다.
=> xy(O), xay(O), bxay(O), hixy(O)
xayb(X, 마지막이 y로 끝나야 함)
xaay(X, a? 가 1개이므로 a는 없거나 1개만 존재해야 함)
소괄호() = 소괄호 안의 모든 문자열을 포함(그룹화) 하는 문자열
(xy) : xy 가 그대로 포함된 문자열
중괄호{ } = 반복 관련 문자열
x{n} : x가 n 번 반복되는 문자열
=> x{2} : x가 2번 반복되는 문자열 = "xx", x{5} = "xxxxx"
x{n, m} : x가 n 번 이상 m 번 이하 반복되는 문자열
=> x{2,4} : x가 2번에서 4번까지 반복되는 문자열 = "xx", "xxx", "xxxx"
x{n,} : x가 n 번 이상 반복되는 문자열
=> x{2, } : x가 2번 이상 반복되는 문자열 = "xx", "xxx", "xxxx", ...
대괄호[] = [] 기호 안의 문자들 중 하나가 나오는 문자열
[xy] : x 또는 y 1글자
[a-z] : 소문자(소문자 a ~ 소문자 z) 1글자
[가-힣] : 한글 1글자
[0-9] : 숫자 1자리
대괄호[] 내의 ^ 기호 = 해당 문자열이 포함되지 않는 문자열(제외)
[^0-9] : 숫자가 아닌 문자 1글자
[^A-Z] : 대문자가 아닌 1글자 또는 숫자
(예제 1)
(a1){2}b{2,4}c{2, }
=> a1 문자열 2번 나오고, b가 2~4번 나오고, c는 2번 이상 나오는 문자열
a1a1bbcc(O), a1a1bbbbbccc(X)
(예제 2)
[a-z]{2}[0-9][가-힣][^A-Z]
=> 소문자 2글자, 숫자 1개, 한글 1글자, 대문자가 아닌 것 1개
aa1홍a(O), aa1홍1(O), aa1홍Z(X)
^[가-힣]{2,5}$ => 한글 2 ~ 5글자
^(010|011)[-\s]?\d{3,4}[-\s]?\d{4}$
=> 010 또는 011 로 시작하고, - 기호 또는 공백이 있을 수도 있고 없을 수도 있음
숫자가 3자리~4자리 뒤에 - 기호 또는 공백이 있을 수도 있고 없을 수도 있음
마지막 숫자 4자리로 끝
ex) 010-123-4567 (O)
010 1234 5678 (O)
010)1234-5678 (X)
010-1234-567a (X)
ㅣ읽느라 수고 많으셨어요~ㅣ
부족한 글을 읽어주셔서 감사드립니다
아직 부족한 게 많으니
틀린 곳이 있다면
조언의 말씀 꼭 부탁드립니다!!!!
[자바] DTO /DAO_insert/update/delete/select (0) | 2020.08.30 |
---|---|
[자바] 정규식 regex을 표현하는 Pattern 클래스_ (Matcher /matches 메서드) (0) | 2020.08.29 |
[자바] 형식화 클래스_ DecimalFormat 클래스/메소드/toString (0) | 2020.08.25 |
[자바] 예외 처리(2) throws /throw 왜 쓸까?/ 위임/ Exception/일부러 발생시키는 오류 (0) | 2020.08.24 |
[JAVA] 자바_누적 함수/ 별만들기/짝수,홀수(반복문for문/if문 조건문) (0) | 2020.08.23 |