//
boolean java.util.regex.Pattern.matches(
String arg0, CharSequence arg1
// arg0 : 정규표현식 문자열
// arg1 : 형식을 검사받기 위한 내용
// 즉, 위의 기능 arg1이 arg0의 형식에 맞는지를 검사하고
// 결과를 boolean으로 리턴한다.
);
👍 참고 URL : https://hamait.tistory.com/342
숫자 모양에 대한 형식 검사
"^[0-9]*$"
영문으로만 구성되었는지에 대한 형식 검사
"^[a-zA-Z]*$"
한글로만 구성되었는지에 대한 형식 검사
"^[ㄱ-ㅎ가-힣]*$"
영문과 숫자로만 구성되었는지에 대한 형식 검사
"^[a-zA-Z0-9]*$"
한글과 숫자로만 구성되었는지에 대한 형식 검사
"^[ㄱ-ㅎ가-힣0-9]*$"
이메일 형식인지에 대한 검사. "아이디@도메인"의 형식을 충족해야 한다.
"^[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*.[a-zA-Z]{2,3}$"
"-"없이 핸드폰번호인지에 대한 형식검사.
"^01(?:0|1|[6-9])(?:\\d{3}|\\d{4})\\d{4}$"
"-"없이 전화번호인지에 대한 형식검사. 각 부분에 대한 자리수도 충족시켜야 한다.
"^\\d{2,3}\\d{3,4}\\d{4}$"
"-"없이 주민번호에 대한 글자수 및 뒷자리 첫글자가 1~4의 범위에 있는지에 대한 검사
"^\\d{6}[1-4]\\d{6}"
🚩 RegexHelper 클래스
/*
* 주어진 문자열이 공백이거나 null인지를 검사
* @param str - 검사할 문자열
* @return boolean - 공백, null이 아닐 경우 true 리턴
*/
public boolean isValue( String str ) {
boolean result = false;
if(str != null ) {
result = !str.trim().equals("");
}
return result;
}
/*
* 숫자 모양에 대한 형식 검사
* @param str - 검사할 문자열
* @return boolean - 형식에 맞을 경우 true, 맞지 않을 경우 false
*/
public boolean isNum( String str ) {
boolean result = false;
if(isValue(str)) {
result = Pattern.matches("^[0-9]*$", str);
}
return result;
}
/*
* 영문으로만 구성되어있는지에 대한 형식 검사
* @param str - 검사할 문자열
* @return boolean - 형식에 맞을 경우 true, 맞지 않을 경우 false
*/
public boolean isEng( String str ) {
boolean result = false;
if(isValue(str)) {
result = Pattern.matches("^[a-zA-Z]*$", str);
}
return result;
}
/*
* 한글으로만 구성되어있는지에 대한 형식 검사
* @param str - 검사할 문자열
* @return boolean - 형식에 맞을 경우 true, 맞지 않을 경우 false
*/
public boolean isKor( String str ) {
boolean result = false;
if(isValue(str)) {
result = Pattern.matches("^[ㄱ-ㅎ가-힣]*$", str);
}
return result;
}
🚩 main 클래스
String name = "자바학생";
String age = "19";
String email = "forever89829@naver.com";
String phone = "01040072415";
if(!RegexHelper2.getInstance().isKor(name)) {
System.out.println("이름을 한글로 입력해주세요.");
return;
}
if(!RegexHelper2.getInstance().isNum(age)) {
System.out.println("나이는 숫자로만 입력해주세요.");
return;
}
if(!RegexHelper2.getInstance().isEmail(email)) {
System.out.println("이메을을 형식에 맞게 입력해주세요.");
return;
}
if(!RegexHelper2.getInstance().isPhone(phone)) {
System.out.println("전화번호를 형식에 맞게 입력해주세요.");
return;
}