자바에서 Pattern 클래스를 통해 정규표현식을 처리할 수 있습니다.
위의 테스트 코드를 보면 @CsvSource를 통해 전화번호 정규표현식을 테스트하고 있습니다.
첫번째 문자열은 테스트 문자열이고, 두번째 문자열은 기대치 문자열입니다.
전화번호 정규표현식을 생성합니다.(19라인)
메소드 체이닝을 통해 앞의 전화번호 정규표현식을 컴파일하여 Pattern 객체를 생성하고
주어진 문자열이 정규표현식에 맞는지 확인하는 Matcher 객체를 생성합니다.
Matcher 객체를 통해 주어진 전화번호가 정규표현식에 맞는지 확인합니다.(22 ~ 31라인)
22라인의 전화번호 유효성 확인하는 코드를 "Pattern.matches(reg, testStr);"으로 간단하게 수정할 수 있습니다.
정규표현식에 맞으면 기대했던 boolean expFlag와 맞는지 확인합니다.(24 ~ 26라인)
정규표현식에 맞지 않으면 테스트 문자열을 정규표현식으로 변형하여 기대치 문자열과 맞는지 확인합니다.(26 ~ 31라인)
해당 테스트 코드를 실행하면 정상적으로 종료된 것을 확인할 수 있습니다.
전화번호, 이메일, 아이디 등 유효성 체크할 때 사용하면 유용할 거 같습니다.
'dev > 자바' 카테고리의 다른 글
Java thread lock synchronized (0) | 2024.04.23 |
---|---|
JDK 11 FileReader Encoding (0) | 2024.04.22 |
Java List Stream (0) | 2023.08.29 |
Comparator&Comparable 인터페이스 (0) | 2023.06.20 |
csv parsing lambda stream (0) | 2023.06.08 |