자바 문자열 String Class 함수 matches()

2022. 10. 18. 13:33

아 드디어 정규표현식 matches 등장!

matches() 는 JAVA 정규 표현식의 일치여부를 확인해주는 함수이다. 문자열타입(String) final 변수에 정규표현식을 선언해두고, 입력받은 내용이 정규표현식에 조건에 만족하면 true를 만족하지 않으면 false를 반환한다.

사용법 : (확인할변수).maches(정규표현식 변수);

import java.util.Scanner;

public class StringMatchesExample {
    static final String USERID_REGEX = "^[a-zA-Z0-9]{8,20}$";
    static final String PASSWORD_REGEX = "^[a-zA-Z0-9~!@#$%^&*()_+,./]{8,20}$";
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        // 아이디와 비밀번호 규칙은 다음과 같음
        // 사용자 아이디: 영문자, 숫자 가능 (길이: 8 ~ 20)
        // 사용자 비밀번호: 영문자, 숫자, 특수문자 가능 (길이: 8 ~ 20)

        System.out.print("아이디를 입력하시오: ");
        String userId = sc.next();
        System.out.print("비밀번호를 입력하시오: ");
        String password = sc.next();

        boolean userIdCheck = userId.matches(USERID_REGEX);
        boolean passwordCheck = password.matches(PASSWORD_REGEX);
        System.out.println(userIdCheck   ? "아이디  사용 가능 :)" : "아이디  사용 불가능 :(");
        System.out.println(passwordCheck ? "비밀번호 사용 가능 :)" : "비밀번호 사용 불가능 :(");
    }
}

BELATED ARTICLES

more