본문으로 바로가기

1. 정규 표현식

정규 표현식의 최소한의 기본은 다음과 같으며 자세한 표현법은 아래의 링크를 참조해주세요.

https://ko.wikipedia.org/wiki/정규_표현식

정규식 기본

 

2. matches

public boolean matches(String regex)

: 문자열이 지정된 정규식과 일치하는지 여부를 나타냅니다.
: str.matches(regex) 형식의 이 메서드를 호출하면 식과 정확히 동일한 결과가 생성됩니다.

 

: 지정된 정규식과 일치할 경우 true 일치하지 않을 경우 false

 

예시

String regexEmail = "^[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*.[a-zA-Z]{2,3}$";
String regexPhone = "(010)-\\d{4}-\\d{4}";

String test1 = "guswns3124@naver.com";
String test2 = "@naver.com";
String test3 = "010-0000-0000";
String test4 = "019-000-0000";

System.out.println(test1.matches(regexEmail)); // true
System.out.println(test2.matches(regexEmail)); // false
System.out.println(test3.matches(regexPhone)); // true
System.out.println(test4.matches(regexPhone)); // false

 

3. Pattern 클래스

public static boolean matches(String regex, CharSequence input)

: 지정된 정규식과 일치할 경우 true 일치하지 않을 경우 false

 

예시

String regexEmail = "^[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-_.]?[0-9a-zA-Z])*.[a-zA-Z]{2,3}$";
String regexPhone = "(010)-\\d{4}-\\d{4}";

String test1 = "guswns3124@naver.com";
String test2 = "@naver.com";
String test3 = "010-0000-0000";
String test4 = "019-000-0000";

System.out.println(Pattern.matches(regexEmail, test1)); // true
System.out.println(Pattern.matches(regexEmail, test2)); // false
System.out.println(Pattern.matches(regexPhone, test3)); // true
System.out.println(Pattern.matches(regexPhone, test4)); // false